#ahf-wc-player-root, #ahf-wc-player-root *{ box-sizing:border-box; }
#ahf-wc-player-root{
  --bg:#FFF8EF; --card:#ffffff; --ink:#2B2440;
  --accent:#F59E0B; --accent2:#1A56DB; --green:#2E9E5B; --red:#c0392b;
  --shadow:0 8px 24px rgba(43,36,64,0.12);
  font-family: Verdana, Arial, 'Segoe UI', system-ui, sans-serif;
  color:var(--ink);
  background:var(--bg);
  min-height:100vh;
  display:flex; flex-direction:column; align-items:center;
  padding:24px 14px 60px;
  width:100%;
}
#ahf-wc-player-root:fullscreen,
#ahf-wc-player-root:-webkit-full-screen{
  min-height:100vh; padding-top:40px;
}
.ahf-wc-h1{ font-size:1.4rem; margin:4px 0 10px; text-align:center; }
.ahf-wc-levelbar{ display:flex; gap:10px; margin-bottom:14px; justify-content:center; flex-wrap:wrap; }
.ahf-wc-levelbtn{
  border:2px solid var(--accent2); background:#fff; color:var(--accent2);
  padding:10px 16px; border-radius:14px; font-weight:800; cursor:pointer; font-size:0.85rem;
}
.ahf-wc-levelbtn.active{ background:var(--accent2); color:#fff; }
.ahf-wc-panelbox{
  background:var(--card); border-radius:20px; box-shadow:var(--shadow);
  padding:24px; margin-bottom:18px; text-align:center; max-width:600px; width:100%;
}
.ahf-wc-daybar{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; justify-content:center; margin-bottom:10px; }
.ahf-wc-btn{
  border:none; border-radius:12px; padding:10px 16px; font-weight:700; cursor:pointer; font-size:0.9rem;
}
.ahf-wc-btn.grey{ background:#eee; color:var(--ink); }
.ahf-wc-btn.red{ background:var(--red); color:#fff; }
.ahf-wc-btn:active{ transform:scale(0.96); }
.ahf-wc-rounddots{ display:flex; gap:8px; justify-content:center; align-items:center; margin:14px 0 4px; flex-wrap:wrap; }
.ahf-wc-dot{ width:20px; height:20px; border-radius:50%; background:#e5e0f0; display:inline-block; }
.ahf-wc-dot.filled{ background:var(--green); }
.ahf-wc-dotlabel{ width:100%; text-align:center; font-size:0.82rem; color:#786f93; margin-top:2px; }
.ahf-wc-seqSummary{ font-size:0.9rem; color:#786f93; margin:14px 0; }
.ahf-wc-startbtn{
  background:var(--green); color:#fff; border:none; border-radius:24px;
  font-size:1.4rem; font-weight:800; padding:26px 50px; cursor:pointer;
  box-shadow:0 10px 30px rgba(46,158,91,0.35); margin-top:6px;
}
.ahf-wc-startbtn:active{ transform:scale(0.97); }
.ahf-wc-fsbtn{
  background:#fff; color:var(--accent2); border:2px solid var(--accent2); border-radius:14px;
  font-weight:700; padding:10px 18px; cursor:pointer; font-size:0.9rem; margin-top:14px;
}
.ahf-wc-note{ font-size:0.78rem; color:#9a91b5; margin-top:10px; }

.ahf-wc-overlay{
  position:fixed; inset:0; background:rgba(43,36,64,0.6);
  display:none; align-items:center; justify-content:center; z-index:9999; padding:20px;
}
.ahf-wc-overlay.show{ display:flex; }
.ahf-wc-stagepanel{
  background:#fff; border-radius:28px; padding:20px;
  width:min(90vw, 560px); height:min(80vh, 560px);
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  box-shadow:0 20px 50px rgba(0,0,0,0.3);
  animation: ahfwcfadein .35s ease;
}
@keyframes ahfwcfadein{ from{opacity:0;} to{opacity:1;} }
.ahf-wc-wordEmoji{ font-size:7rem; line-height:1; }
.ahf-wc-wordEmoji img{ max-width:80%; max-height:80%; object-fit:contain; border-radius:16px; }
.ahf-wc-wordText{
  font-size:4rem; font-weight:700; color:#D92B2B; text-transform:lowercase;
  text-align:center; word-break:break-word;
}
.ahf-wc-stopbtn{ position:fixed; top:16px; right:16px; z-index:10000; }
.ahf-wc-doneOverlay .ahf-wc-wordText{ font-size:2.2rem; color:var(--ink); }
