<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <title>Kole UI · Countdown</title>
  <link rel="stylesheet" href="../.design_library/kole-ui/colors_and_type.css" />
  <link rel="stylesheet" href="./Countdown.css" />
</head>
<body>
  <div class="kole-page">
    <h2 class="kole-h2">Countdown 倒计时</h2>
    <p class="kole-desc">用于秒杀、验证码、会议开始等场景，支持天/时/分/秒，结束触发回调。</p>

    <div class="kole-demo">
      <div class="kole-demo__title">距活动结束</div>
      <div class="kole-countdown" role="timer" aria-live="polite" id="cd"></div>
    </div>
  </div>

  <script>
    var target = Date.now() + 2 * 3600 * 1000 + 35 * 60 * 1000 + 12 * 1000; // 2h35m12s
    var root = document.getElementById('cd');
    function renderCountdown() {
      var diff = target - Date.now();
      if (diff <= 0) {
        clearInterval(timer);
        root.innerHTML = '<span class="kole-countdown-done" role="timer" aria-live="polite">活动已结束</span>';
        return;
      }
      var s = Math.floor(diff / 1000);
      var d = Math.floor(s / 86400); s %= 86400;
      var h = Math.floor(s / 3600); s %= 3600;
      var m = Math.floor(s / 60); var sec = s % 60;
      var pad = function (n) { return String(n).padStart(2, '0'); };
      var seg = function (num, label) {
        return '<div class="kole-countdown-seg" role="timer" aria-live="polite"><span class="kole-countdown-num" aria-live="polite">' + pad(num) + '</span><span class="kole-countdown-label" aria-live="polite">' + label + '</span></div>';
      };
      root.innerHTML = (d > 0 ? seg(d, '天') : '') + seg(h, '时') + '<span class="kole-countdown-sep" aria-live="polite">:</span>' + seg(m, '分') + '<span class="kole-countdown-sep" aria-live="polite">:</span>' + seg(sec, '秒');
    }
    renderCountdown();               // 首帧立即渲染，避免初始 1 秒空白
    var timer = setInterval(renderCountdown, 1000);
  </script>
</body>
</html>
