/* ---- crystal ball (заменяет колесо наград) ---- */
.wheel-wrap{ position:relative; width:230px; height:244px; margin:12px auto 4px; display:flex; align-items:flex-start; justify-content:center; }
.orb-art{ position:absolute; left:0; top:0; width:230px; height:244px; pointer-events:none; }
.orb-art-back{ z-index:1; }
/* Глянцевая пастельная сфера: перламутровый голубой, большой блик, звёздочки и вихрь внутри */
.orb{
  position:relative; z-index:2; margin-top:4px; width:176px; height:176px; border-radius:50%; padding:0; border:0;
  background:
    radial-gradient(ellipse at 50% 102%, rgba(255,246,214,.85) 0%, rgba(255,246,214,0) 46%),
    radial-gradient(circle at 78% 82%, rgba(214,190,255,.55) 0%, rgba(214,190,255,0) 40%),
    radial-gradient(circle at 50% 46%, #A9C6F7 0%, #9BBBF3 58%, #C6D7FB 100%);
  box-shadow:
    inset 0 0 0 2px rgba(255,255,255,.55),
    inset 0 0 26px rgba(255,255,255,.7),
    inset -10px -12px 26px rgba(196,176,250,.35),
    0 12px 28px rgba(110,140,220,.35),
    0 0 30px rgba(170,200,255,.55);
  cursor:pointer; overflow:hidden;
  display:flex; align-items:center; justify-content:center;
  transition:transform .18s ease, filter .35s ease, box-shadow .35s ease;
  -webkit-tap-highlight-color:transparent;
}
.orb:active{ transform:scale(.97); }
.orb:disabled{ cursor:default; }
.orb-inner{ position:absolute; inset:0; width:100%; height:100%; pointer-events:none; }
/* Большой блик-капсула сверху слева */
.orb-shine{
  position:absolute; top:16px; left:22px; width:34px; height:78px; border-radius:20px;
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.55));
  transform:rotate(36deg); transform-origin:center; pointer-events:none; opacity:.92;
  box-shadow:0 0 8px rgba(255,255,255,.7);
}
.orb-smoke{
  position:absolute; inset:0; display:flex; flex-direction:column;
  align-items:center; justify-content:center; gap:3px;
  color:#34478C; font-family:'Manrope'; font-weight:800;
  font-size:11px; text-align:center; line-height:1.25; padding:0 22px;
  text-shadow:0 0 8px rgba(255,255,255,.95), 0 1px 2px rgba(255,255,255,.9);
  transition:opacity .3s ease; z-index:2;
}
.orb-smoke .n{ font-size:26px; line-height:1; color:#F4B63F; text-shadow:0 0 10px rgba(255,236,170,.95), 0 1px 2px rgba(255,255,255,.9); }
.orb-smoke .cap{ font-size:10.5px; font-weight:800; }
.orb-say{
  position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
  padding:0 22px; text-align:center; font-size:13px; font-weight:800; line-height:1.3;
  color:#2E4180; opacity:0; transition:opacity .3s ease; pointer-events:none; z-index:2;
  text-shadow:0 0 8px rgba(255,255,255,.95), 0 1px 2px rgba(255,255,255,.9);
  overflow-wrap:anywhere; word-break:break-word; max-height:100%;
}
/* Гадание: шар светится и трясётся */
.orb.rolling{ animation:orbRoll 1.6s cubic-bezier(.36,.07,.19,.97) both; filter:brightness(1.04) saturate(1.25); box-shadow:inset 0 0 0 2px rgba(255,255,255,.7), inset 0 0 34px rgba(255,255,255,.85), 0 12px 28px rgba(110,140,220,.45), 0 0 54px rgba(190,210,255,.95); }
@keyframes orbRoll{
  0%{ transform:rotate(0deg) scale(1); }
  12%{ transform:rotate(-8deg) scale(1.04); }
  28%{ transform:rotate(7deg) scale(1.06); }
  44%{ transform:rotate(-6deg) scale(1.05); }
  60%{ transform:rotate(5deg) scale(1.04); }
  76%{ transform:rotate(-3deg) scale(1.02); }
  100%{ transform:rotate(0deg) scale(1); }
}
.orb.dimmed{ filter:saturate(1.1) brightness(.97); }
.orb-reveal{ animation:orbReveal .55s cubic-bezier(.2,.9,.3,1.2) both; }
@keyframes orbReveal{
  0%{ transform:scale(.93); }
  60%{ box-shadow:inset 0 0 0 2px rgba(255,255,255,.6), inset 0 0 30px rgba(255,255,255,.8), 0 12px 28px rgba(110,140,220,.35), 0 0 64px rgba(200,220,255,1); }
  100%{ transform:scale(1); }
}
.wheel-result-title{ font-family:'Baloo 2'; font-size:19px; font-weight:700; margin:0 0 2px; color:var(--ink); }
.wheel-result{ text-align:center; font-weight:700; margin:12px 0 0; min-height:20px; }
.wheel-result .prize{ display:block; font-size:15px; line-height:1.35; overflow-wrap:anywhere; }
.wheel-hint{ text-align:center; font-size:11.5px; color:var(--muted); margin:8px 0 0; }

.board-section{ margin-top:20px; }
.board-title{
  font-family:'Baloo 2'; font-weight:700; font-size:14px; margin-bottom:8px;
}
.board-body{
  border-radius:var(--radius); min-height:90px; background:var(--white);
  box-shadow:var(--shadow); padding:12px;
}
.board-body textarea{
  width:100%; height:80px; border:none; outline:none; resize:none;
  font-family:'Manrope'; font-size:13px; background:transparent;
}
