:root{
  --ink:#f6f8fb; --muted:#b9c3cf; --glass:rgba(14,22,34,.58); --line:rgba(255,255,255,.14);
  --gold:#f5c542; --accent:#1aa36f; --red:#e5484d;
  --font:"Tajawal","Segoe UI",Tahoma,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%;overflow:hidden;background:#0b1220;color:var(--ink);font-family:var(--font);user-select:none;-webkit-user-select:none;touch-action:none}
#game{position:fixed;inset:0;width:100%;height:100%;display:block}

/* شاشة البداية */
.overlay{position:fixed;inset:0;display:grid;place-items:center;padding:16px;
  background:radial-gradient(120% 90% at 50% 0%,rgba(20,40,70,.55),rgba(5,10,20,.85));backdrop-filter:blur(6px);z-index:20;transition:opacity .5s}
.overlay.hide{opacity:0;pointer-events:none}
.card{width:min(560px,100%);background:var(--glass);border:1px solid var(--line);border-radius:22px;padding:28px 26px 24px;text-align:center;
  box-shadow:0 30px 80px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.12)}
.logo{width:76px;height:76px;margin:0 auto 10px;border-radius:20px;display:grid;place-items:center;color:#fff;
  background:linear-gradient(160deg,#1fbf83,#0d7a52);box-shadow:0 10px 0 #095c3d,0 18px 30px rgba(0,0,0,.35)}
h1{font-size:34px;font-weight:900;letter-spacing:.3px}
.sub{color:var(--muted);margin:8px auto 18px;max-width:420px;line-height:1.7;font-size:15.5px}
.label{font-weight:700;font-size:14px;color:var(--muted);margin-bottom:10px}
.swatches{display:flex;justify-content:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}
.sw{width:40px;height:40px;border-radius:50%;border:3px solid transparent;cursor:pointer;box-shadow:0 4px 0 rgba(0,0,0,.35),inset 0 2px 6px rgba(255,255,255,.35);transition:transform .15s}
.sw:hover{transform:translateY(-2px)}
.sw.on{border-color:#fff;transform:scale(1.12)}
.keys{display:grid;grid-template-columns:1fr 1fr;gap:7px 16px;text-align:right;font-size:14px;color:#dfe6ee;margin:0 auto 22px;max-width:420px}
kbd{display:inline-block;min-width:26px;padding:2px 6px;margin-left:4px;border-radius:7px;background:#e9eef4;color:#1b2533;font:700 12px/1.6 var(--font);
  text-align:center;box-shadow:0 3px 0 #9aa7b6}
.btn{font:900 19px var(--font);color:#fff;border:0;border-radius:14px;padding:14px 44px;cursor:pointer;
  background:linear-gradient(180deg,#22c78a,#13965f);box-shadow:0 6px 0 #0b6a43,0 14px 26px rgba(0,0,0,.35);transition:transform .08s,box-shadow .08s}
.btn:active{transform:translateY(5px);box-shadow:0 1px 0 #0b6a43,0 6px 14px rgba(0,0,0,.35)}
.btn:disabled{filter:grayscale(.6) brightness(.8);cursor:wait}

/* الواجهة */
#hud{position:fixed;inset:0;pointer-events:none;z-index:10}
.panel{position:absolute;background:var(--glass);border:1px solid var(--line);border-radius:16px;backdrop-filter:blur(8px);
  box-shadow:0 10px 30px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.1)}
.coins{top:16px;right:16px;display:flex;align-items:center;gap:8px;padding:10px 16px;color:var(--gold)}
.coins b{font-size:28px;font-weight:900;color:#fff}
.coins span{color:var(--muted);font-weight:700}
.coins i{font-style:normal}
.coins.pop{animation:pop .35s}
@keyframes pop{40%{transform:scale(1.15)}}
.timer{top:16px;right:190px;padding:10px 16px;display:flex;flex-direction:column;align-items:center;line-height:1.1}
.timer span{font-size:12px;color:var(--muted);font-weight:700}
.timer b{font-size:22px;font-variant-numeric:tabular-nums}
.tools{position:absolute;top:16px;left:16px;display:flex;gap:8px;pointer-events:auto}
.tbtn{width:48px;height:48px;border-radius:14px;border:1px solid var(--line);background:var(--glass);color:#fff;cursor:pointer;display:grid;place-items:center;
  backdrop-filter:blur(8px);box-shadow:0 4px 0 rgba(0,0,0,.35);transition:transform .08s}
.tbtn:active{transform:translateY(3px);box-shadow:0 1px 0 rgba(0,0,0,.35)}
.tbtn svg{width:24px;height:24px}
.tbtn.off{opacity:.45}
.tbtn.q span{font:900 15px var(--font)}
#minimap{position:absolute;bottom:16px;left:16px;width:220px;height:220px;border-radius:18px;border:2px solid rgba(255,255,255,.25);
  box-shadow:0 12px 30px rgba(0,0,0,.4);background:#203024}
.gauge{position:absolute;bottom:16px;right:16px;width:150px;height:150px;border-radius:50%;background:var(--glass);border:1px solid var(--line);
  backdrop-filter:blur(8px);box-shadow:0 12px 30px rgba(0,0,0,.4)}
.gauge svg{position:absolute;inset:0;transform:rotate(135deg)}
.gauge circle{fill:none;stroke-width:9;stroke-linecap:round}
.gauge .track{stroke:rgba(255,255,255,.12);stroke-dasharray:235.6 314.2}
.gauge .arc{stroke:url(#none);stroke:#22c78a;stroke-dasharray:0 314.2;transition:stroke .3s}
.gnum{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}
.gnum b{font-size:40px;font-weight:900;font-variant-numeric:tabular-nums}
.gnum span{font-size:13px;color:var(--muted);font-weight:700;margin-top:4px}
.turbo{position:absolute;bottom:14px;left:0;right:0;text-align:center;font-weight:900;font-size:12px;color:#ff9f43;opacity:0;transition:opacity .2s}
.turbo.on{opacity:1}
.fps{position:absolute;top:74px;left:18px;font:700 12px var(--font);color:rgba(255,255,255,.55)}
.toast{position:absolute;top:22%;left:50%;transform:translate(-50%,-10px);padding:14px 26px;border-radius:16px;background:var(--glass);
  border:1px solid var(--line);backdrop-filter:blur(8px);font-weight:900;font-size:22px;opacity:0;transition:opacity .35s,transform .35s;text-align:center;white-space:nowrap}
.toast.show{opacity:1;transform:translate(-50%,0)}
.toast small{display:block;font-size:14px;color:var(--muted);font-weight:700;margin-top:4px}

/* اللمس */
.touch{position:absolute;bottom:250px;display:none;gap:12px;pointer-events:auto;direction:ltr}
.touch.left{left:16px}
.touch.right{right:16px;bottom:190px}
.touch button{width:74px;height:74px;border-radius:20px;border:1px solid var(--line);background:var(--glass);color:#fff;font:900 16px var(--font);
  backdrop-filter:blur(8px);box-shadow:0 5px 0 rgba(0,0,0,.4)}
.touch button svg{width:34px;height:34px}
.touch button.on{transform:translateY(4px);box-shadow:0 1px 0 rgba(0,0,0,.4);background:rgba(34,199,138,.45)}
.touch .gas{background:rgba(26,163,111,.55)}
.touch .brake{background:rgba(229,72,77,.45)}
@media (pointer:coarse){.touch{display:flex}}
@media (max-width:700px){
  #minimap{width:130px;height:130px;bottom:auto;top:80px;left:16px}
  .gauge{width:110px;height:110px}
  .gnum b{font-size:28px}
  .timer{right:16px;top:78px}
  .touch.left{bottom:24px}
  .touch.right{bottom:140px}
  .fps{top:220px}
}

/* اختيار نوع السيارة */
.types{display:flex;justify-content:center;gap:8px;margin-bottom:14px;flex-wrap:wrap}
.ty{font:700 14px var(--font);color:#fff;background:rgba(255,255,255,.08);border:1px solid var(--line);border-radius:12px;padding:8px 14px;cursor:pointer}
.ty.on{background:linear-gradient(180deg,#22c78a,#13965f);border-color:transparent;box-shadow:0 3px 0 #0b6a43}
/* حالة السيارة */
.health{top:16px;right:300px;padding:9px 14px;display:flex;flex-direction:column;gap:5px;min-width:150px}
.health span{font-size:12px;color:var(--muted);font-weight:700}
.health b{font-size:13px;position:absolute;left:14px;top:8px}
.hbar{height:9px;border-radius:6px;background:rgba(255,255,255,.12);overflow:hidden}
.hbar i{display:block;height:100%;width:100%;background:linear-gradient(90deg,#22c78a,#7be0a8);border-radius:6px;transition:width .3s,background .3s}
.health.warn .hbar i{background:linear-gradient(90deg,#ff9f43,#ffc56b)}
.health.bad .hbar i{background:linear-gradient(90deg,#e5484d,#ff7a7d)}
.health.bad{animation:blink 1s infinite}
@keyframes blink{50%{box-shadow:0 0 0 2px rgba(229,72,77,.6),0 10px 30px rgba(0,0,0,.3)}}
.gnum em{font-style:normal;font-weight:900;font-size:13px;color:#ffd166;margin-top:3px}
#minimap{border-radius:50%;background:transparent;border:0;box-shadow:0 12px 30px rgba(0,0,0,.45)}
.bigmap{position:fixed;inset:0;background:rgba(8,12,20,.82);backdrop-filter:blur(6px);display:grid;place-items:center;pointer-events:auto;z-index:15}
.bigmap[hidden]{display:none}
.bigmap canvas{width:min(92vw,92vh);height:min(92vw,92vh);border-radius:22px;box-shadow:0 30px 80px rgba(0,0,0,.5)}
.mapClose{position:absolute;top:18px;left:50%;transform:translateX(-50%);font:900 16px var(--font);color:#fff;border:0;border-radius:12px;padding:10px 22px;background:linear-gradient(180deg,#22c78a,#13965f);box-shadow:0 5px 0 #0b6a43;cursor:pointer}
.touch .horn{background:rgba(245,197,66,.45)}
@media (max-width:700px){ .health{right:16px;top:140px;min-width:120px} }

/* ───── الجوال ───── */
.touchHelp{display:none;color:#dfe6ee;font-size:14px;line-height:1.8;margin:0 auto 16px;max-width:420px}
.rotate{display:none}
body.mobile .keys{display:none}
body.mobile .touchHelp{display:block}
body.mobile .fps{display:none}
@media (pointer:coarse) and (orientation:portrait){
  .rotate{position:fixed;inset:0;z-index:30;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:rgba(5,10,20,.92);color:#fff;text-align:center}
  .rotate b{font-size:22px}.rotate span{color:var(--muted)}
  .rotate svg{animation:rot 1.8s ease-in-out infinite}
}
@keyframes rot{50%{transform:rotate(-90deg)}}
@media (max-height:520px){
  .overlay{align-items:center;overflow:auto;padding:8px}
  .logo,.sub,.card .label{display:none}
  .card h1{margin-bottom:8px}
  .types{margin-bottom:8px}.ty{padding:6px 12px;font-size:13px}
  .touchHelp{font-size:12.5px;line-height:1.6;margin-bottom:10px}
  .card{padding:16px 18px 18px}
  .logo{width:52px;height:52px;border-radius:14px;margin-bottom:6px}.logo svg{width:30px;height:30px}
  h1{font-size:24px}.sub{margin:4px auto 10px;font-size:13.5px}
  .swatches{margin-bottom:12px}.sw{width:32px;height:32px}
  .btn{padding:11px 36px;font-size:17px}
  .tools{top:10px;left:10px;gap:6px}.tbtn{width:40px;height:40px;border-radius:12px}.tbtn svg{width:20px;height:20px}
  .coins{top:10px;right:10px;padding:6px 12px}.coins b{font-size:22px}
  .timer{top:62px;right:10px;padding:5px 12px}.timer b{font-size:16px}
  .health{top:118px;right:10px;padding:5px 10px;min-width:108px}.health b{font-size:11px;top:5px;left:10px}.health span{font-size:10px}
  #minimap{width:118px;height:118px;top:60px;bottom:auto;left:10px}
  .gauge{width:84px;height:84px;top:10px;bottom:auto;right:auto;left:50%;transform:translateX(-50%)}
  .gnum b{font-size:24px}.gnum span{font-size:10px}.turbo{bottom:6px;font-size:10px}
  .touch.left{left:12px;bottom:12px}
  .touch.right{right:12px;bottom:12px}
  .touch button{width:68px;height:68px}
  .touch .gas{width:76px;height:96px}
  .toast{top:30%;font-size:17px}
}

/* الدفع الرباعي ومستوى المطاردة */
.tbtn.t4 span{font:900 13px var(--font)}
.tbtn.t4.on{background:linear-gradient(180deg,#f5a623,#c97c0c);border-color:transparent}
.wanted{position:absolute;top:16px;left:50%;transform:translateX(-50%);font-size:28px;letter-spacing:4px;color:#ffd166;text-shadow:0 2px 8px rgba(0,0,0,.6);opacity:0;transition:opacity .3s}
.wanted i{font-style:normal;color:rgba(255,255,255,.25)}
.wanted.on{opacity:1;animation:wflash 1s infinite}
@keyframes wflash{50%{color:#ff5a5a}}
@media (max-height:520px){ .wanted{top:98px;font-size:20px} .tbtn.t4 span{font-size:11px} }

/* الساعة والطقس، وزر السيارة الجديدة */
.clockp{top:16px;right:300px;transform:translateX(-170px);padding:10px 14px;font-weight:700;font-size:14px;white-space:nowrap}
.deadBtn{position:absolute;left:50%;top:58%;transform:translateX(-50%);font:900 20px var(--font);color:#fff;border:0;border-radius:16px;padding:14px 30px;pointer-events:auto;cursor:pointer;
  background:linear-gradient(180deg,#e5484d,#b4232a);box-shadow:0 6px 0 #7d151a,0 16px 30px rgba(0,0,0,.4);animation:pulse 1.2s infinite}
.deadBtn[hidden]{display:none}
@keyframes pulse{50%{transform:translateX(-50%) scale(1.06)}}
.tbtn.on{background:linear-gradient(180deg,#22c78a,#13965f);border-color:transparent}
.touch .door{background:rgba(70,110,200,.5)}
@media (max-height:520px){ .clockp{top:174px;right:10px;transform:none;padding:5px 10px;font-size:11px} .deadBtn{top:45%;font-size:16px;padding:10px 22px} }
@media (max-width:700px){ .clockp{top:200px;right:16px;transform:none} }

@media (max-height:520px){
  .tools{gap:5px}.tbtn{width:36px;height:36px;border-radius:10px}.tbtn svg{width:18px;height:18px}.tbtn.q span,.tbtn.t4 span{font-size:10px}
  #minimap{top:52px;width:110px;height:110px}
  .gauge{top:auto;bottom:10px;width:82px;height:82px}
  .wanted{top:56px}
}
