/* ===== ערכת עיצוב ואפקטים משותפת לכל המשחקים ===== */
:root{
  --navy:#1b2a4a;--gold:#f0c24b;--gold2:#c9952b;--cream:#f7f1e3;--ink:#070c1c;
  --line:rgba(255,255,255,.12);--glass:rgba(255,255,255,.06);
  --a1:rgba(64,102,214,.5);--a2:rgba(212,165,55,.28);--a3:rgba(120,60,200,.32);
  --ok:#2fbf71;--bad:#e5484d;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{background:var(--ink)}
body{margin:0;min-height:100vh;font-family:Heebo,Arial,sans-serif;color:var(--cream);background:var(--ink);overflow-x:hidden}

/* רקע חי */
.fx-aurora{position:fixed;inset:-25%;z-index:-2;pointer-events:none;
  background:
    radial-gradient(40% 35% at 20% 20%,var(--a1),transparent 70%),
    radial-gradient(35% 30% at 82% 28%,var(--a2),transparent 70%),
    radial-gradient(45% 40% at 50% 92%,var(--a3),transparent 70%);
  filter:blur(40px);animation:fx-aur 20s ease-in-out infinite alternate}
@keyframes fx-aur{50%{transform:translate3d(5%,-4%,0) rotate(6deg) scale(1.08)}100%{transform:translate3d(-4%,3%,0) rotate(-5deg) scale(1.12)}}
/* שכבות האפקטים תמיד שקופות, גם אם משחק מעצב canvas באופן כללי */
#fx-bg{position:fixed;inset:0;z-index:-1;pointer-events:none;background:transparent!important;border:0!important}
#fx-layer{position:fixed;inset:0;z-index:70;pointer-events:none;background:transparent!important;border:0!important}

/* כותרות */
h1{font-family:"Frank Ruhl Libre",serif;font-weight:900;font-size:clamp(34px,8vw,56px);line-height:1.05;margin:26px 0 6px;text-align:center;
  background:linear-gradient(100deg,#fff6d2 0%,#f0c24b 30%,#a8761c 50%,#f0c24b 70%,#fff6d2 100%);background-size:220% auto;
  -webkit-background-clip:text;background-clip:text;color:transparent;animation:fx-shine 6s linear infinite;
  filter:drop-shadow(0 4px 22px rgba(240,194,75,.35))}
@keyframes fx-shine{to{background-position:220% center}}
.sub{margin:0 0 14px;opacity:.78;font-size:15px;text-align:center;max-width:560px;line-height:1.55}

.bh{position:fixed;top:10px;right:14px;font-size:13px;color:var(--gold);z-index:20;opacity:.9}
a.back{position:fixed;top:8px;left:12px;z-index:20;color:var(--cream);font-size:13px;font-weight:700;text-decoration:none;
  padding:6px 13px;border-radius:30px;background:rgba(255,255,255,.07);border:1px solid var(--line);backdrop-filter:blur(10px);transition:.2s}
a.back:hover{background:rgba(240,194,75,.18);border-color:var(--gold)}

/* זכוכית */
.glass{background:linear-gradient(160deg,rgba(255,255,255,.10),rgba(255,255,255,.03));border:1px solid var(--line);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:22px;
  box-shadow:0 24px 60px -12px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.14)}

/* כפתורים */
.btn{position:relative;overflow:hidden;font-family:inherit;font-weight:800;font-size:16px;border:none;border-radius:14px;padding:11px 22px;cursor:pointer;
  color:#1a1405;background:linear-gradient(180deg,#ffe08a,#f0c24b 45%,#c48d22);
  box-shadow:0 6px 0 #8a5f12,0 10px 26px -6px rgba(240,194,75,.6),inset 0 1px 0 rgba(255,255,255,.7);
  transition:transform .12s,box-shadow .12s,filter .2s}
.btn::after{content:"";position:absolute;top:0;bottom:0;width:40%;left:-60%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.65),transparent);transform:skewX(-20deg);transition:left .6s}
.btn:hover{filter:brightness(1.07)}
.btn:hover::after{left:120%}
.btn:active{transform:translateY(4px);box-shadow:0 2px 0 #8a5f12,0 4px 14px -6px rgba(240,194,75,.6),inset 0 1px 0 rgba(255,255,255,.7)}
.btn.ghost{color:var(--cream);background:rgba(255,255,255,.08);border:1px solid var(--line);box-shadow:0 4px 0 rgba(0,0,0,.35);backdrop-filter:blur(10px)}
.btn.ghost:active{box-shadow:0 1px 0 rgba(0,0,0,.35)}
.btn.sm{font-size:14px;padding:8px 15px;border-radius:11px}
.btn:disabled{opacity:.35;cursor:default;filter:grayscale(.6)}

select{font-family:inherit;font-size:15px;font-weight:700;padding:9px 14px;border-radius:12px;cursor:pointer;
  color:var(--cream);background:rgba(255,255,255,.08);border:1px solid var(--line);backdrop-filter:blur(10px);outline:none}
select option{background:#141d36;color:var(--cream)}

/* תיבות ניקוד */
.stats{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-bottom:14px}
.stat{min-width:92px;padding:7px 16px;text-align:center;border-radius:16px;background:linear-gradient(160deg,rgba(255,255,255,.1),rgba(255,255,255,.03));border:1px solid var(--line);backdrop-filter:blur(12px)}
.stat small{display:block;font-size:11px;letter-spacing:.5px;opacity:.65;font-weight:700}
.stat b{display:inline-block;font-size:24px;font-weight:900;color:#ffe08a;text-shadow:0 0 16px rgba(240,194,75,.5)}

/* אנימציות עזר */
.fx-bump{animation:fx-bump .4s cubic-bezier(.3,1.8,.5,1)}
@keyframes fx-bump{40%{transform:scale(1.3)}}
.fx-shake{animation:fx-shake .45s}
@keyframes fx-shake{15%,55%{transform:translateX(-8px) rotate(-.6deg)}35%,75%{transform:translateX(8px) rotate(.6deg)}}
.fx-float{position:fixed;z-index:80;pointer-events:none;font-weight:900;font-size:24px;white-space:nowrap;transform:translate(-50%,-50%);
  text-shadow:0 2px 10px rgba(0,0,0,.7),0 0 20px currentColor;animation:fx-float 1.15s ease-out forwards}
@keyframes fx-float{0%{opacity:0;transform:translate(-50%,-30%) scale(.5)}20%{opacity:1;transform:translate(-50%,-70%) scale(1.2)}100%{opacity:0;transform:translate(-50%,-190%) scale(1)}}
.fx-flash{position:fixed;inset:0;z-index:65;pointer-events:none;animation:fx-flash .5s ease-out forwards}
@keyframes fx-flash{from{opacity:.55}to{opacity:0}}
@keyframes fx-in{from{opacity:0;translate:0 24px;scale:.96}to{opacity:1;translate:0 0;scale:1}}
.fx-in{animation:fx-in .6s cubic-bezier(.2,.8,.2,1) both}

#fx-mute{position:fixed;bottom:12px;left:12px;z-index:30;width:42px;height:42px;border-radius:50%;font-size:18px;cursor:pointer;
  background:rgba(255,255,255,.08);border:1px solid var(--line);color:var(--cream);backdrop-filter:blur(10px);transition:.2s}
#fx-mute:hover{border-color:var(--gold)}

@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
