.wu-stage { cursor: default; }
.wu-fill { position: absolute; inset: 0; background: #000; }
.wu-demo { position: absolute; inset: 0; background: linear-gradient(180deg, #000 0%, #2a0000 30%, #a01800 55%, #ff7a1a 75%, #ffc47a 90%, #ffe0bd 100%); opacity: 1; transition: opacity .4s; }
.is-full .wu-demo, .wu-demo.off { opacity: 0; }
.wu-count { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); margin: 0; text-align: center; color: #4a1c10;
  font-size: clamp(1rem, 4vmin, 1.6rem); line-height: 1.4; font-variant-numeric: tabular-nums; pointer-events: none; }
.wu-count strong { display: block; font-size: 2.2em; font-weight: 300; }
.wu-count[hidden], .wu-bar[hidden], .wu-bar button[hidden], .wu-sub[hidden] { display: none; }
.wu-bar { position: absolute; left: 50%; bottom: max(20px, env(safe-area-inset-bottom)); transform: translateX(-50%); z-index: 7; display: flex;
  flex-wrap: wrap; justify-content: center; align-items: center; gap: 8px; padding: 6px 6px 6px 14px; border-radius: 24px; background: rgba(12, 8, 6, .85);
  color: #d9a58a; max-width: calc(100% - 24px); }
.wu-bar button { font: inherit; font-weight: 700; font-size: .92rem; min-height: 44px; padding: 0 16px; border-radius: 999px; border: 1px solid #533;
  background: #1f120c; color: #f0c0a0; cursor: pointer; }
.wu-bar-t { font-size: .88rem; font-variant-numeric: tabular-nums; }
.wu-go { margin-top: 12px; }
.wu-go .btn { white-space: normal; max-width: 100%; }
.wu-plan { margin: 12px 0 0; font-weight: 600; }
.wu-warn { margin-top: 12px; background: var(--surface); border: 1px solid var(--line); border-left: 4px solid var(--accent); border-radius: 12px; padding: 10px 14px; font-size: .92rem; }
.wu-warn p { margin: 0; }
.wu-sub { display: grid; gap: 8px; margin-top: 10px; }
.wu-sub .btn { justify-self: start; }
.ctl .switch { justify-content: flex-start; }
