/* Shell + screens. Tokens and base components are in style.css; desktop (≥ 900 px) in layout.css. */
#app{max-width:480px;height:100dvh;margin:0 auto;display:flex;flex-direction:column;overflow:hidden;position:relative;
background:var(--suits),radial-gradient(120% 34% at 50% 0%,rgba(242,193,78,.15),rgba(242,193,78,0) 70%),radial-gradient(80% 26% at 50% 100%,rgba(242,193,78,.07),rgba(242,193,78,0) 70%),var(--bg);
padding:var(--sat) var(--sar) 0 var(--sal)}
#app.full{padding-bottom:var(--sab)}
@media (min-width:560px) and (max-width:899px){#app{max-width:680px;box-shadow:0 0 0 1px #141417,0 0 60px rgba(0,0,0,.8)}}
#view{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;scrollbar-width:thin;scrollbar-color:#2A2A31 transparent}
.scr{display:flex;flex-direction:column;flex:1 0 auto;min-height:100%}
#layer{position:fixed;inset:0;pointer-events:none;z-index:50;display:flex;justify-content:center}
#layer>.ov{pointer-events:auto;position:fixed;max-width:480px;margin:0 auto}
@media (min-width:560px) and (max-width:899px){#layer>.ov{max-width:680px}}
.splash,.center-page{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px}
.splash h1{font-size:44px}
.bdy{flex:1;display:flex;flex-direction:column;gap:14px;padding:12px var(--gut) 22px;min-height:0}
.flip svg{transform:none}[dir=ltr] .flip svg{transform:scaleX(-1)}
/* .fwd: a «go on» chevron — points to the reading end (left in Arabic, right in English) */
[dir=rtl] .fwd svg{transform:scaleX(-1)}
.link{font-size:12px;font-weight:600}
.spin{width:38px;height:38px;border-radius:50%;border:3px solid #2E2E35;border-top-color:var(--gd);animation:sp 1s linear infinite}
@keyframes sp{to{transform:rotate(360deg)}}
@media (max-width:899px){.dk-only{display:none!important}}
@media (min-width:900px){.ph-only{display:none!important}}

/* ---- phone top bar (.top) ---- */
.top{position:relative;z-index:4;padding:8px var(--gut) 10px;background:linear-gradient(180deg,rgba(30,30,35,.94),rgba(10,10,12,.94));border-bottom:1px solid rgba(242,193,78,.16);box-shadow:0 10px 24px rgba(0,0,0,.45)}
.top::after{content:"";position:absolute;left:10%;right:10%;bottom:-1px;height:1px;background:linear-gradient(90deg,rgba(242,193,78,0),rgba(242,193,78,.7),rgba(242,193,78,0))}
.top-ic{gap:6px}
.ib.tb{width:36px;height:36px;border-radius:12px;color:#E8E8EE;background:radial-gradient(120% 90% at 50% 0%,#34343C,#19191D 70%);border-color:#2E2E36;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),inset 0 -2px 0 rgba(0,0,0,.4),0 2px 6px rgba(0,0,0,.4)}
.ib.tb:active{transform:translateY(1px)}
.chip.lang{height:36px;border-radius:12px;padding:0 11px;gap:6px;background:radial-gradient(120% 90% at 50% 0%,#2E2E35,#16161A 70%);border-color:#2E2E36;box-shadow:inset 0 1px 0 rgba(255,255,255,.1)}
.chip.lang svg{color:var(--gd)}
.top-r2{margin-top:9px;gap:8px}
.prof{flex:1;min-width:0;height:56px;border-radius:30px;display:flex;align-items:center;gap:9px;padding-inline:5px 14px;
background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,0) 50%),linear-gradient(180deg,#24242A,#111114);border:1px solid var(--hair);
box-shadow:inset 0 1px 0 rgba(255,255,255,.08),inset 0 -2px 0 rgba(0,0,0,.45),0 4px 12px rgba(0,0,0,.45)}
.pav{position:relative;flex:none;display:block}
.pav .lvn{position:absolute;bottom:-5px;left:50%;transform:translateX(-50%);min-width:24px;height:17px;border-radius:9px;background:var(--gold);color:#241800;font-size:10.5px;font-weight:700;
display:flex;align-items:center;justify-content:center;padding:0 5px;border:2px solid #111114;box-shadow:0 2px 5px rgba(0,0,0,.5)}
.prof-t{gap:5px}
.prof-n{font-size:13.5px;line-height:1.2}
.prof-lv{gap:6px}.prof-lv .bar{height:6px}.prof-lv b{font-size:10.5px;color:var(--gd);flex:none}
.pills{gap:6px;flex:none}
.pill{height:40px;border-radius:20px;display:flex;align-items:center;gap:3px;padding-inline:4px 4px;font-weight:700;font-size:13px;white-space:nowrap;flex:none;position:relative;
background:linear-gradient(180deg,#08080A,#16161A);border:1px solid #2C2C33;box-shadow:inset 0 2px 5px rgba(0,0,0,.7),0 1px 0 rgba(255,255,255,.06)}
.pill-ic{display:flex;filter:drop-shadow(0 2px 3px rgba(0,0,0,.6))}
.pill b{min-width:22px;text-align:center;padding:0 2px;font-weight:700}
.plus{width:24px;height:24px;border-radius:50%;background:var(--green);color:#03240F;display:flex;align-items:center;justify-content:center;flex:none;
box-shadow:inset 0 1px 0 rgba(255,255,255,.6),inset 0 -2px 0 rgba(0,60,25,.35),0 2px 5px rgba(0,0,0,.5)}
.plus svg{stroke-width:3}
.pill:active{transform:translateY(1px)}
@media (max-width:374px){.top-r2{gap:6px}.prof{padding-inline:4px 10px;gap:7px}.pill{height:36px;font-size:12px}.pill-ic svg{width:19px;height:19px}.plus{width:21px;height:21px}.chip.lang{padding:0 8px}}
/* screen header (kit.header) */
.hdr{padding:10px var(--gut);background:linear-gradient(180deg,rgba(28,28,33,.92),rgba(10,10,12,.88));border-bottom:1px solid rgba(242,193,78,.14);position:sticky;top:0;z-index:5;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 8px 20px rgba(0,0,0,.35)}
.hdr h2{font-size:18px}
/* ---- bottom navigation: 5 tabs with glossy art; the active one is raised and lit, home sits on a raised disc ---- */
.nav{position:relative;z-index:6;display:flex;align-items:flex-end;flex:none;padding:0 4px var(--sab);height:calc(68px + var(--sab));
background:linear-gradient(180deg,#1E1E23 0%,#0D0D0F 55%,#060607 100%);border-top:1px solid rgba(242,193,78,.2);box-shadow:0 -12px 30px rgba(0,0,0,.65),inset 0 1px 0 rgba(255,255,255,.06)}
.nav::before{content:"";position:absolute;left:12%;right:12%;top:-1px;height:1px;background:linear-gradient(90deg,rgba(242,193,78,0),rgba(242,193,78,.8),rgba(242,193,78,0))}
.nav:empty{display:none}
.nt{flex:1;min-width:0;height:66px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:3px;padding-bottom:7px;position:relative;color:#8C8C98;font-size:11px;font-weight:600;isolation:isolate}
.na{position:relative;display:flex;align-items:center;justify-content:center;width:44px;height:38px;transition:transform .3s var(--spring)}
.na .art{filter:grayscale(.92) brightness(.6) contrast(1.15) drop-shadow(0 2px 2px rgba(0,0,0,.6));transition:filter .25s}
.nl{max-width:100%;line-height:1.2;transition:color .2s}
.nt.on{color:var(--gd);font-weight:700}
.nt.on .na{transform:translateY(-12px) scale(1.2)}
.nt.on .art{filter:drop-shadow(0 5px 6px rgba(0,0,0,.7)) drop-shadow(0 0 10px rgba(242,193,78,.4))}
.nt.on::before{content:"";position:absolute;z-index:-1;left:50%;bottom:14px;width:70px;height:56px;transform:translateX(-50%);border-radius:50%;
background:radial-gradient(closest-side,rgba(242,193,78,.34),rgba(242,193,78,.08) 60%,rgba(242,193,78,0));pointer-events:none}
.nt.on::after{content:"";position:absolute;bottom:2px;left:50%;width:22px;height:3px;margin-left:-11px;border-radius:2px;background:var(--gold);box-shadow:0 0 8px rgba(242,193,78,.8)}
.nt-home .na{width:62px;height:62px;margin-top:-26px}
.nt-home .na::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:50%;background:radial-gradient(circle at 50% 30%,#34343C,#121215 70%);border:1px solid rgba(242,193,78,.35);
box-shadow:0 -6px 18px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.14),inset 0 -4px 8px rgba(0,0,0,.5)}
.nt-home .art{filter:grayscale(.6) brightness(.78) drop-shadow(0 2px 3px rgba(0,0,0,.6))}
.nt-home.on .na{transform:translateY(-6px) scale(1.08)}
.nt-home.on .na::before{border-color:rgba(242,193,78,.8);box-shadow:0 0 0 3px rgba(242,193,78,.12),0 0 24px rgba(242,193,78,.45),0 -6px 18px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.2)}
.nt-home.on::before{bottom:20px}
.nt .bd{top:-4px;right:-2px;left:auto}
[dir=rtl] .nt .bd{right:auto;left:-2px}
.nt:active .na{transform:scale(.92)}.nt.on:active .na{transform:translateY(-12px) scale(1.12)}
.resume{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px var(--gut) 0;padding:9px 12px;border-radius:12px;background:linear-gradient(90deg,rgba(242,193,78,.18),rgba(242,193,78,.06));border:1px solid rgba(242,193,78,.5);font-size:12px;box-shadow:var(--glow)}
.resume b{color:var(--gd)}
.dtop,.rail-logo{display:none}
/* ---- shared pieces ---- */
.tabs{display:flex;background:linear-gradient(180deg,#09090B,#131316);border:1px solid #232328;border-radius:var(--r2);padding:4px;gap:4px;box-shadow:inset 0 2px 6px rgba(0,0,0,.55)}
.tabs>*{flex:1 1 auto;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:600;color:var(--mu);gap:6px;font-size:13px;white-space:nowrap;position:relative;min-width:0;transition:color .2s}
.tabs .on{background:var(--gold);color:#241800;font-weight:700;box-shadow:inset 0 1px 0 rgba(255,255,255,.6),inset 0 -2px 0 rgba(120,70,0,.25),0 3px 10px rgba(242,193,78,.25)}
/* .hero: a lit banner card (club card, free coins…) */
.hero{position:relative;border-radius:var(--r3);padding:14px 16px;border:1px solid var(--hairS);overflow:hidden;gap:12px;isolation:isolate;
background:radial-gradient(70% 140% at 100% 50%,rgba(242,193,78,.24),rgba(242,193,78,0) 70%),var(--surf);box-shadow:inset 0 1px 0 rgba(255,236,170,.12),var(--sh2)}
[dir=ltr] .hero{background:radial-gradient(70% 140% at 0% 50%,rgba(242,193,78,.24),rgba(242,193,78,0) 70%),var(--surf)}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:var(--suits);opacity:.5;-webkit-mask-image:linear-gradient(90deg,#000,transparent 60%);mask-image:linear-gradient(90deg,#000,transparent 60%)}
[dir=rtl] .hero::after{-webkit-mask-image:linear-gradient(-90deg,#000,transparent 60%);mask-image:linear-gradient(-90deg,#000,transparent 60%)}
.mt{border-radius:18px;height:112px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;font-weight:700;font-size:15px;color:#fff;padding:0 6px;text-align:center}
.mt.gd{color:#241800}
.tile{flex:1;border-radius:14px;background:var(--s2);border:1px solid var(--ln);padding:10px 6px;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:12px;min-width:0}
.tile.on{border-color:var(--gd);background:linear-gradient(180deg,rgba(242,193,78,.18),rgba(242,193,78,.04))}
.tours{display:flex;gap:8px;align-items:stretch}.tours-empty{padding:10px 0}
.li{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #1E1E22;width:100%;text-align:start;font-size:14px;color:inherit}
.li:last-child{border-bottom:0}
.dot{width:9px;height:9px;border-radius:5px;background:var(--ok);display:inline-block;box-shadow:0 0 6px var(--ok)}
.tg{width:40px;height:22px;border-radius:11px;background:#3A3A42;position:relative;flex:none;display:inline-block}
.tg:before{content:"";position:absolute;top:-9px;bottom:-9px;left:-4px;right:-4px}
.tg:after{content:"";position:absolute;top:3px;right:3px;width:16px;height:16px;border-radius:8px;background:#fff;transition:all .15s}
.tg.on{background:var(--ok)}.tg.on:after{right:21px}
.ck{width:20px;height:20px;border-radius:6px;background:var(--gold);color:#241800;display:inline-flex;align-items:center;justify-content:center;flex:none}
.opts{gap:10px;align-items:stretch}
.opt{flex:1;border-radius:16px;border:1.5px solid var(--ln);background:var(--s2);padding:14px 6px;display:flex;flex-direction:column;align-items:center;gap:8px;font-weight:600;font-size:13px;text-align:center;color:#fff;justify-content:flex-end}
.opt.on{border-color:var(--gd);background:linear-gradient(180deg,rgba(242,193,78,.18),rgba(242,193,78,.03));color:var(--gd)}
.dev{border:2px solid currentColor;border-radius:7px;display:block;position:relative}.dev:after{content:"";position:absolute;inset:4px;border-radius:9px;background:currentColor;opacity:.25}
.gw{border-radius:16px;background:var(--s2);border:1px solid var(--ln);padding:12px 4px 8px;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:11px;position:relative;color:var(--mu);min-width:0}
.gw>b{position:absolute;top:-7px;left:-5px;background:var(--gold);color:#241800;border-radius:9px;font-size:10px;padding:1px 6px}
.kpi{font-size:18px;font-weight:700}
.stats .pn{padding:8px 2px}
/* login */
.login{flex:1;padding:22px 24px calc(18px + env(safe-area-inset-bottom));gap:14px;max-width:440px;width:100%;margin:0 auto}
.brand{align-items:center;gap:10px;margin:14px 0 6px;text-align:center}
.brand h1{font-size:44px;line-height:1.1}
.or .g{height:1px;background:var(--ln)}
.inp-w{position:relative;display:block}
.inp-w svg{position:absolute;top:15px;left:14px;color:var(--mu);pointer-events:none}
[dir=ltr] .inp-w svg{left:auto;right:14px}
.foot-note{margin-top:auto;line-height:1.7}
.gbox{position:relative;min-height:48px}
.gbox #gsi{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;opacity:0}
.gbox.ready #gsi{opacity:1}.gbox.ready .btn{visibility:hidden}
/* avatar picker */
.avlib{gap:12px;justify-items:center}
.avpick{border-radius:50%;padding:3px;border:0}
.avpick.on{background:var(--gold);box-shadow:0 0 16px rgba(242,193,78,.5)}
.avpick .av{border:2px solid #3A3A42}
.bare{background:none;border:0;outline:none;color:#fff;font-weight:700;text-align:end;flex:1;min-width:0;height:100%}
label.inp{display:flex;align-items:center;gap:8px}
label.btn{cursor:pointer}
/* account */
.me-av{position:relative;flex:none}
.cam{position:absolute;bottom:-4px;left:-6px;width:30px;height:30px;border-radius:15px;background:var(--gold);color:#241800;border:2px solid var(--bg);display:flex;align-items:center;justify-content:center}
[dir=ltr] .cam{left:auto;right:-6px}
.list .li svg:first-child{color:#fff}
/* private lobby */
.code{font-size:32px;font-weight:700;letter-spacing:.18em;color:var(--gd);display:flex;align-items:center;gap:10px;padding:6px 14px;border-radius:14px;background:#0B0B0C;border:1px dashed rgba(242,193,78,.6)}
.code svg{color:var(--mu)}
/* table frame */
.scr-table{height:100%;min-height:0;overflow:hidden;position:relative}
.tbar{padding:10px 14px;border-bottom:1px solid #1E1E22;background:rgba(5,5,6,.6);flex:none}
.tbar .tt{min-width:0;padding:0 6px}
.tbody{flex:1;min-height:0;display:flex}
.tmain{flex:1;min-width:0;display:flex;flex-direction:column;min-height:0}
.tside{display:none}
.hud{padding:8px 14px 0;flex:none}
.felt-wrap{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:center}
.fan-wrap{flex:none}
.board-wrap{flex:1;min-height:0;display:flex;flex-direction:column}
.tfoot{padding:8px 14px 12px;margin-top:auto;flex:none}
.tfoot .turnchip{display:none}
.scr-table .ov{position:absolute}
@media (max-height:700px){.tbar{padding:6px 14px}.tfoot{padding:4px 14px 8px}}
/* ---- game tiles (.gm): art tile + name ---- */
.gm{display:flex;flex-direction:column;align-items:center;gap:7px;font-size:12px;font-weight:600;padding:10px 4px 9px;border-radius:16px;background:var(--surf);border:1px solid var(--ln);position:relative;text-align:center;cursor:pointer;color:#fff;min-width:0;box-shadow:var(--hl),var(--sh1);transition:transform .15s var(--ease),border-color .2s}
.gm:active{transform:scale(.96)}
.gm.on{border-color:rgba(242,193,78,.8);background:radial-gradient(90% 70% at 50% 0%,rgba(242,193,78,.24),rgba(242,193,78,0) 70%),var(--surf);box-shadow:var(--glow),inset 0 1px 0 rgba(255,236,170,.15)}
.gm.on::after{content:"";position:absolute;bottom:-2px;left:32%;right:32%;height:3px;border-radius:2px;background:var(--gold);box-shadow:0 0 8px rgba(242,193,78,.8)}
.gm-n{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3}
.gm.empty{border-style:dashed;cursor:default;box-shadow:none;background:rgba(255,255,255,.015)}
.es{width:50px;height:50px;border-radius:24%;border:1.5px dashed #4A4A55;display:flex;align-items:center;justify-content:center;color:#5A5A66;font-size:22px}

/* ---- home ---- */
.home{gap:16px}
.home>.h-sc{order:0}.home>.pbn{order:1}.home>.h-fav{order:2}.home>.h-game{order:3}.home>.h-chal-w{order:4}.home>.club-home{order:5}.home>.h-free{order:6}.home>.h-friends{order:7}
/* shortcut strip: glowing circular icons with a gold ring, an optional pill (timer / count) and a label */
.h-sc{margin:-2px calc(-1 * var(--gut)) 0}
.sc-track{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;padding:6px var(--gut) 2px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.sc-track::-webkit-scrollbar{display:none}
.sc{flex:0 0 78px;display:flex;flex-direction:column;align-items:center;position:relative;scroll-snap-align:start;color:#fff;font-weight:600;transition:transform .15s var(--ease)}
.sc:active{transform:scale(.94)}
.sc-ic{--r1:#FFE9A0;--r2:#B9800F;--gl:rgba(242,193,78,.28);width:62px;height:62px;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;border:3px solid transparent;
background:radial-gradient(circle at 50% 28%,#34343E 0%,#17171C 55%,#0A0A0C 100%) padding-box,conic-gradient(from 200deg,var(--r1),var(--r2),var(--r1),var(--r2),var(--r1)) border-box;
box-shadow:0 0 16px var(--gl),0 4px 10px rgba(0,0,0,.6),inset 0 -6px 10px rgba(0,0,0,.55)}
.sc-ic::after{content:"";position:absolute;left:12%;right:12%;top:3px;height:44%;border-radius:50% 50% 45% 45%/70% 70% 30% 30%;background:linear-gradient(180deg,rgba(255,255,255,.2),rgba(255,255,255,0));pointer-events:none}
.sc-ic svg{width:36px;height:36px;filter:drop-shadow(0 3px 3px rgba(0,0,0,.55))}
.sc-free .sc-ic,.sc-chal .sc-ic{--r1:#FF9AA8;--r2:#B3182B;--gl:rgba(255,77,94,.28)}
.sc-friends .sc-ic{--r1:#A9CBFF;--r2:#2F5FC0;--gl:rgba(61,139,255,.26)}
.sc-tours .sc-ic,.sc-pg[href="#/badges"] .sc-ic{--r1:#D8C6FF;--r2:#6A3FE0;--gl:rgba(139,92,246,.28)}
.sc-pg.pr .sc-ic{--r1:#FFD86B;--r2:#D72638;--gl:rgba(215,38,56,.35)}
.sc-p{position:relative;z-index:1;margin-top:-10px;min-width:30px;height:19px;border-radius:10px;padding:0 7px;display:flex;align-items:center;justify-content:center;
background:linear-gradient(180deg,#1C1C21,#09090B);border:1px solid var(--hairS);font-size:10.5px;color:#fff;box-shadow:0 2px 6px rgba(0,0,0,.6)}
.sc-p:has(.get){background:var(--green);border-color:rgba(255,255,255,.25);color:#03240F}
.sc-p b{font-weight:700}
.sc-l{margin-top:5px;font-size:11px;line-height:1.25;max-width:100%;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sc:has(.sc-p[hidden]) .sc-l{margin-top:7px}
/* «ألعابي»: favourites pick the game card */
.h-fav{display:flex;flex-direction:column;gap:10px}
.favs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.favs .gi{width:100%!important;max-width:54px;height:auto!important;aspect-ratio:1}
.favs .gm{padding:9px 3px 8px}
.gm.more{color:var(--gd)}
.more-gi{--ag:rgba(242,193,78,.25);color:var(--gd)}
.more-gi svg{width:46%!important;height:46%!important;filter:none!important}
/* the game card */
.hgc{position:relative;border-radius:22px;border:1px solid var(--hairS);background:var(--surf);overflow:hidden;
box-shadow:0 0 0 1px rgba(242,193,78,.06),0 0 34px rgba(242,193,78,.08),inset 0 1px 0 rgba(255,236,170,.1),var(--sh2)}
.hgc-hero{position:relative;display:flex;align-items:center;gap:14px;padding:16px 16px 15px;isolation:isolate;overflow:hidden;
background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,0) 45%),linear-gradient(180deg,#25252B,#131316);border-bottom:1px solid var(--hair)}
.hgc-glow{position:absolute;z-index:-1;inset-inline-start:-30px;top:-60px;width:220px;height:200px;border-radius:50%;background:radial-gradient(closest-side,var(--ac,#F2C14E),transparent);opacity:.32}
.hgc-suits{position:absolute;inset:0;z-index:-1;background:var(--suits);opacity:.7;-webkit-mask-image:linear-gradient(-90deg,#000,transparent 70%);mask-image:linear-gradient(-90deg,#000,transparent 70%)}
[dir=ltr] .hgc-suits{-webkit-mask-image:linear-gradient(90deg,#000,transparent 70%);mask-image:linear-gradient(90deg,#000,transparent 70%)}
.hgc-art{flex:none;transform:rotate(-6deg);filter:drop-shadow(0 10px 16px rgba(0,0,0,.55))}
[dir=ltr] .hgc-art{transform:rotate(6deg)}
.hgc-art .gi{box-shadow:inset 0 0 0 1.5px rgba(242,193,78,.55),inset 0 1px 0 rgba(255,255,255,.25),inset 0 -6px 12px rgba(0,0,0,.45),0 0 0 4px rgba(0,0,0,.35),0 0 26px var(--ag)}
.hgc-name{gap:4px;min-width:0;flex:1}
.hgc-name h2{font-size:24px;line-height:1.2;background:linear-gradient(180deg,#FFFFFF 30%,#F3DFA6);-webkit-background-clip:text;background-clip:text;color:transparent;padding-bottom:2px}
.hgc-sub{font-size:12px;color:var(--mu)}
.hgc-body{padding:14px;gap:12px}
.hgc .jn-hg-btns{margin:0;gap:10px}
.hgc .jn-hg-btns .btn{height:54px;font-size:16px;border-radius:16px;gap:10px}
.hgc-sec{margin-top:2px;font-size:14px}
.hgc .jn-tours{margin:0 -14px;padding:4px 14px 8px}
.hgc .jn-tours-empty{margin:0}
.hgc .jn-hl{margin:0}
.hgc .jn-hl .btn{height:40px;font-size:12px;gap:5px;padding:0 6px;border-radius:12px;background:linear-gradient(180deg,#1E1E23,#141417);box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.hgc .jn-hl .btn svg{color:var(--gd)}
/* tournament tier cards: green felt with a gold trophy */
.jn-tc:not(.sk){background:radial-gradient(90% 55% at 50% 0%,rgba(255,236,170,.2),rgba(255,236,170,0) 70%),var(--suitsF),linear-gradient(180deg,#1E6B45 0%,#0F4129 58%,#082517 100%);
border:1px solid rgba(110,230,160,.35);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),inset 0 -10px 18px rgba(0,0,0,.35),0 8px 18px rgba(0,0,0,.45)}
.jn-tc:first-child:not(.sk){border-color:rgba(242,193,78,.85);box-shadow:0 0 0 1px rgba(242,193,78,.25),0 0 22px rgba(242,193,78,.18),inset 0 1px 0 rgba(255,255,255,.2),0 8px 18px rgba(0,0,0,.45)}
.jn-tc:not(.sk) .jn-tc-seats{background:rgba(0,0,0,.35);border-color:rgba(255,255,255,.12)}
.jn-tc:not(.sk) .jn-tc-nm{color:#fff}
.jn-tc:not(.sk) .jn-tc-fee{color:rgba(255,255,255,.7);background:rgba(0,0,0,.28);margin:2px -10px -10px;width:calc(100% + 20px);padding:6px 10px;border-radius:0 0 15px 15px}
.jn-tc:not(.sk) .jn-tc-bar{background:rgba(0,0,0,.35)}
/* current challenge banner */
.h-chal-w{gap:10px}
.hcb{position:relative;display:flex;align-items:center;gap:12px;padding:16px;border-radius:20px;overflow:hidden;isolation:isolate;min-height:122px;color:#fff;
background:radial-gradient(70% 120% at 0% 100%,rgba(242,193,78,.28),rgba(242,193,78,0) 60%),linear-gradient(135deg,#6A1226 0%,#300A14 55%,#15060A 100%);
border:1px solid rgba(255,130,150,.32);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),var(--sh2);transition:transform .15s var(--ease)}
[dir=rtl] .hcb{background:radial-gradient(70% 120% at 100% 100%,rgba(242,193,78,.28),rgba(242,193,78,0) 60%),linear-gradient(-135deg,#6A1226 0%,#300A14 55%,#15060A 100%)}
.hcb:active{transform:scale(.985)}
.hcb-suits{position:absolute;inset:0;z-index:-1;background:var(--suits);opacity:.9}
.hcb-t{gap:5px}
.hcb-h{font-size:19px;line-height:1.25;text-shadow:0 2px 10px rgba(0,0,0,.5)}
.hcb-s{color:rgba(255,255,255,.72);line-height:1.5}
.hcb-prog{gap:8px;margin-top:4px}.hcb-prog .bar{flex:none;width:104px;background:rgba(0,0,0,.4)}
.hcb-r{align-items:center;gap:10px;flex:none}
.hcb-art{transform:rotate(-8deg);filter:drop-shadow(0 8px 14px rgba(0,0,0,.55))}
/* free coins */
.hfr{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--r3);border:1px solid var(--hair);background:radial-gradient(60% 140% at 100% 50%,rgba(255,77,94,.16),rgba(255,77,94,0) 70%),var(--surf);box-shadow:var(--hl),var(--sh1)}
[dir=ltr] .hfr{background:radial-gradient(60% 140% at 0% 50%,rgba(255,77,94,.16),rgba(255,77,94,0) 70%),var(--surf)}
.hfr-art{flex:none;filter:drop-shadow(0 6px 10px rgba(0,0,0,.5))}
.hfr b{font-size:15px}
.h-friends .li .btn{flex:none}
.li.rdt{color:var(--rd)}
.np-seg>*{cursor:pointer}.tr-2p{margin-inline-start:6px;vertical-align:middle;font-size:11px}
.pg-chip.sc{height:auto;padding:0;border:0;border-radius:0;background:none;gap:0;font-size:inherit;display:flex;box-shadow:none}
.pg-chip.sc .sc-ic svg{color:inherit}
.sc-pg.pr .pg-emb{width:40px;height:40px}
/* ---- games ---- */
.srch{height:46px;border-radius:23px;padding:0 16px;gap:10px;background:linear-gradient(180deg,#07070A,#141417);border:1px solid #2A2A31;box-shadow:inset 0 2px 6px rgba(0,0,0,.65),0 1px 0 rgba(255,255,255,.04);color:var(--mu);cursor:text}
.srch:focus-within{border-color:var(--gd);box-shadow:inset 0 2px 6px rgba(0,0,0,.65),0 0 0 3px rgba(242,193,78,.12)}
.srch input{flex:1;min-width:0;background:none;border:0;outline:none;color:#fff;height:100%;font-size:14px}
.srch input::placeholder{color:#7A7A86}
.gs-fav,.gs-all{gap:10px}
.gs-note{font-weight:500}
.gfav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.gf{position:relative;display:flex;flex-direction:column;border-radius:16px;overflow:hidden;background:var(--surf);border:1px solid var(--ln);box-shadow:var(--hl),var(--sh1);min-width:0}
.gf.on{border-color:rgba(242,193,78,.45);background:radial-gradient(90% 60% at 50% 0%,rgba(242,193,78,.14),rgba(242,193,78,0) 70%),var(--surf)}
.gf-a{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 4px 10px;font-size:12px;font-weight:600;min-width:0;position:relative}
.gf .gi{width:100%!important;max-width:60px;height:auto!important;aspect-ratio:1}
.gf .n{position:absolute;top:6px;inset-inline-start:7px;font-size:10px;font-weight:700;color:var(--gd);opacity:.8}
.gf .hrt{height:34px;width:100%;border-top:1px solid rgba(255,255,255,.06);background:rgba(0,0,0,.28);display:flex;align-items:center;justify-content:center;color:#55555F}
.gf.empty{border-style:dashed;border-color:#34343C;background:rgba(255,255,255,.015);box-shadow:none}
.gf.empty .es{width:min(60px,100%);height:auto;aspect-ratio:1}
.gf .hrt.ph{opacity:.35}
.hrt{transition:transform .15s var(--spring)}
.hrt:active{transform:scale(.85)}
.hrt.on svg{filter:drop-shadow(0 0 6px rgba(255,77,94,.55))}
.gs-tabs{margin-bottom:2px}
.all-games{display:grid;gap:8px}
.gm.grow{flex-direction:row;justify-content:flex-start;align-items:center;gap:12px;padding:8px;padding-inline-end:8px;border-radius:16px;text-align:start;font-size:14px}
.gm.grow:active{transform:scale(.985)}
.grow-t{gap:3px}.grow-t b{font-size:15px}
.grow-pl{gap:4px;font-size:11.5px;color:var(--mu);padding:3px 8px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid #26262B;flex:none}
.grow-pl svg{color:var(--gd)}
.grow .hrt{width:42px;height:42px;border-radius:13px;background:linear-gradient(180deg,#1C1C21,#0D0D10);border:1px solid #2A2A31;display:flex;align-items:center;justify-content:center;color:#5E5E6A;flex:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.grow .hrt.on{border-color:rgba(255,77,94,.45);background:radial-gradient(circle,rgba(255,77,94,.22),rgba(255,77,94,0) 70%),linear-gradient(180deg,#1C1C21,#0D0D10)}
.gs-none{padding:10px 0}
@media (max-width:374px){.grow-pl{display:none}}
/* ---- store ---- */
.store-scr{gap:16px}
.st-offers,.st-coins{gap:8px}
.st-ofs{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none;margin:0 calc(-1 * var(--gut));padding:8px var(--gut) 8px;scroll-snap-type:x proximity}
.st-ofs::-webkit-scrollbar{display:none}
.st-of{--oc:242,193,78;position:relative;flex:0 0 148px;scroll-snap-align:start;display:flex;flex-direction:column;align-items:center;text-align:center;gap:5px;padding:30px 10px 12px;border-radius:18px;overflow:hidden;isolation:isolate;
background:radial-gradient(100% 60% at 50% 0%,rgba(var(--oc),.32),rgba(var(--oc),0) 72%),linear-gradient(180deg,#1E1E23,#0F0F11);border:1px solid rgba(var(--oc),.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),var(--sh2);transition:transform .15s var(--ease)}
.st-of:active{transform:scale(.97)}
.st-of::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--suits);opacity:.45}
.st-of.st-free{--oc:255,77,94}.st-of.of-tx{--oc:46,212,190}.st-of.of-em{--oc:139,92,246}
.st-of-tm{position:absolute;top:8px;left:50%;transform:translateX(-50%);gap:4px;height:22px;padding:0 9px;border-radius:11px;background:rgba(0,0,0,.6);border:1px solid var(--hairS);font-size:11px;color:var(--gd);white-space:nowrap}
.st-of-tm b{font-weight:700}
.st-of-art{height:60px;display:flex;align-items:center;filter:drop-shadow(0 8px 12px rgba(0,0,0,.55))}
.st-of-art .cur{width:52px;height:52px}
.st-of-t{font-size:15px;margin-top:2px}
.st-of-s{font-size:11px;color:#B9B9C4;line-height:1.45;min-height:32px}
.st-of .btn{width:100%;margin-top:auto;height:34px}
#view .st-packs{gap:10px;margin-top:8px}
#view .st-pk{position:relative;padding:16px 6px 10px!important;gap:3px!important;border-radius:18px;overflow:visible;transition:transform .15s var(--ease);
background:radial-gradient(80% 50% at 50% 28%,rgba(242,193,78,.2),rgba(242,193,78,0) 70%),var(--surf);border:1px solid #2E2E35;box-shadow:var(--hl),var(--sh2)}
#view .st-pk:active{transform:scale(.97)}
#view .st-pk.hot{border-color:rgba(242,193,78,.5)}
#view .st-pk.sel{border:1.5px solid var(--gd);box-shadow:0 0 0 1px rgba(242,193,78,.3),0 0 24px rgba(242,193,78,.25),inset 0 1px 0 rgba(255,236,170,.15)}
#view .st-pk.sk{min-height:170px}
.st-art{height:64px;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 6px 10px rgba(0,0,0,.55))}
#view .st-pk .st-amt{font-size:18px;line-height:1.2;background:linear-gradient(180deg,#FFFFFF 35%,#F3DFA6);-webkit-background-clip:text;background-clip:text;color:transparent}
.st-bonus{font-size:11px;color:var(--ok);font-weight:600;min-height:15px}
#view .st-pk .st-price{width:92%;margin-top:6px}
#view .st-pk .rib{top:-10px;box-shadow:0 3px 8px rgba(0,0,0,.5);border:1px solid rgba(255,255,255,.25)}
.st-card{border-color:var(--hair)}
/* ---- play-now tiles (core/play.js): green = real players, gold = حريفة, violet = private table, dark = code ---- */
#app .mt,#layer .mt{box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 8px 18px rgba(0,0,0,.45)}
#app .mt.gr,#layer .mt.gr{background:radial-gradient(80% 60% at 50% 12%,rgba(220,255,235,.5),rgba(220,255,235,0) 60%),var(--green);color:#03240F;border:0;
box-shadow:inset 0 1px 0 rgba(255,255,255,.6),inset 0 -4px 0 rgba(0,60,25,.3),0 8px 22px rgba(34,199,122,.28)}
.mt.gr .mt-ic{background:rgba(0,50,20,.14);border:1px solid rgba(255,255,255,.3)}
.mt.gr .mt-sb{opacity:.8}
.mt.gr .mt-free{background:#03240F;color:#7DF5BE}
#app .mt.gd,#layer .mt.gd{box-shadow:inset 0 1px 0 rgba(255,255,255,.65),inset 0 -4px 0 rgba(120,70,0,.28),0 8px 22px rgba(242,193,78,.22)}
#app .mt.dk.vi,#layer .mt.dk.vi{background:radial-gradient(80% 60% at 50% 10%,rgba(180,150,255,.42),rgba(180,150,255,0) 65%),linear-gradient(180deg,#3B2675,#1B1138);border-color:rgba(170,130,255,.45)}
.mt.dk.vi .mt-ic{background:rgba(255,255,255,.08);border-color:rgba(200,180,255,.35)}
.mt-ic{box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 4px 10px rgba(0,0,0,.25)}
.pns-head .gi{transform:rotate(-6deg)}
/* ---- tournaments / challenges headers ---- */
.tr-head h1{gap:10px;font-size:22px}
.tr-head h1 .art{filter:drop-shadow(0 4px 8px rgba(242,193,78,.35))}
.chals-h{font-size:18px}
/* ---- profile ---- */
.profile-scr{padding-top:12px}
.pf-card{position:relative;border-radius:22px;padding:16px;overflow:hidden;isolation:isolate;border:1px solid var(--hairS);
background:radial-gradient(80% 90% at 88% 0%,rgba(242,193,78,.22),rgba(242,193,78,0) 65%),var(--surf);box-shadow:0 0 30px rgba(242,193,78,.08),inset 0 1px 0 rgba(255,236,170,.12),var(--sh2)}
[dir=ltr] .pf-card{background:radial-gradient(80% 90% at 12% 0%,rgba(242,193,78,.22),rgba(242,193,78,0) 65%),var(--surf)}
.pf-suits{position:absolute;inset:0;z-index:-1;background:var(--suits);opacity:.65;-webkit-mask-image:linear-gradient(180deg,#000,transparent 75%);mask-image:linear-gradient(180deg,#000,transparent 75%)}
.pf-top{gap:14px;align-items:flex-start}
.pf-av{align-items:center;gap:12px;flex:none}
.pf-av .lvn{min-width:28px;height:21px;font-size:12px;bottom:-6px}
.pf-av .lring{padding:4px}
.pf-chg{height:32px;font-size:12px;padding:0 11px;gap:5px;border-radius:10px}
.pf-chg svg{color:var(--gd)}
.pf-id{gap:7px;padding-top:8px;align-items:flex-start}
.pf-id h1{font-size:22px}
.pf-nrow{max-width:100%;gap:6px}
.pf-uid{gap:5px;flex-wrap:wrap}
.pf-uid b{color:#E8E8EE;font-size:12px}
.pf-copy{gap:3px;height:22px;padding:0 7px;border-radius:7px;background:rgba(255,255,255,.05);border:1px solid #2E2E35;font-size:11px;color:#D8D8DE}
.pf-lv{gap:7px;margin-top:16px}
.pf-lvrow{gap:8px}.pf-lvrow .bar{height:10px;border-radius:5px}
.pf-lvb{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;background:var(--gold);color:#241800;flex:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 2px 6px rgba(0,0,0,.5)}
.pf-lvb.nx{background:linear-gradient(180deg,#2C2C33,#121215);color:#fff;border:1px solid #3A3A42;box-shadow:inset 0 1px 0 rgba(255,255,255,.1)}
.pf-stats{gap:8px}
.pf-k{display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 4px 9px;border-radius:16px;background:var(--surf);border:1px solid var(--ln);box-shadow:var(--hl),var(--sh1);min-width:0}
.pf-k-ic{height:28px;display:flex;align-items:center;filter:drop-shadow(0 3px 4px rgba(0,0,0,.5))}
.pf-k .kpi{font-size:18px;line-height:1.2}
.pf-k .mu{max-width:100%}
.pf-sec{border-color:var(--hair)}
.pf-gifts{gap:10px}
.gw{background:radial-gradient(80% 60% at 50% 30%,rgba(242,193,78,.14),rgba(242,193,78,0) 70%),var(--surf)!important;box-shadow:var(--hl),var(--sh1)}
.pf-list{padding:2px 14px}
.pf-btns{margin-top:auto}
[dir=ltr] .prof-n,[dir=ltr] .pf-id h1{text-align:left}[dir=rtl] .prof-n,[dir=rtl] .pf-id h1{text-align:right}
@media (min-width:560px) and (max-width:899px){.all-games{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (prefers-reduced-motion:reduce){.na,.na .art,.nl,.sc,.gm,.hrt,.st-of,.hcb,.st-pk,.btn{transition:none!important}}
#app.nomo .na,#app.nomo .na .art{transition:none}
