/* ================================================================
           CSS 自定义属性（设计令牌）
           所有语义颜色通过变量管理，修改 :root 即可全局生效。
           暗色模式下对应的 :root 会覆盖这些值。
           ================================================================ */
        :root {
            --primary-color: #667eea;
            --accent-color: #764ba2;
            --text-color: #333;
            --glass-bg: rgba(255, 255, 255, 0.7);
            --glass-border: rgba(255, 255, 255, 0.5);
            --text-secondary: #666;
            --text-tertiary: #888;
            --warning-color: #e67e22;
            --danger-color: #ff6b6b;
            --surface-color: #fff;
            --heading-color: #2c3e50;
            --label-color: #444;
            --text-muted: #555;
            --input-bg: rgba(255, 255, 255, 0.8);
            --card-bg-solid: rgba(255, 255, 255, 0.9);
            --card-accent-bg: rgba(118, 75, 162, 0.08);
            --btn-hover-bg: #f1f1f1;
            --overlay-bg: rgba(255, 255, 255, 0.5);
            --glass-blur: 15px;
            --shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.2);
        }

        /* === 页面基底：深色渐变背景 + 居中 flex 布局 === */
        body {
            font-family: 'Segoe UI', 'Microsoft YaHei', sans-serif;
            margin: 0;
            min-height: 100vh;
            display: flex;
            justify-content: center;
            align-items: center;
            color: var(--text-color);
            /* 紫粉渐变背景 */
            background: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%);
            /* 确保背景铺满且不重复 */
            background-attachment: fixed;
            background-size: cover;
            overflow-x: hidden;
        }

        /* 毛玻璃卡片容器 */
        /* === 主卡片容器：毛玻璃效果（backdrop-filter） === */
        .container {
            position: relative;
            z-index: 1;
            box-sizing: border-box;
            background: var(--glass-bg);
            backdrop-filter: blur(var(--glass-blur));
            -webkit-backdrop-filter: blur(var(--glass-blur));
            border: 1px solid var(--glass-border);
            border-radius: 20px;
            padding: 2.5rem;
            box-shadow: var(--shadow);
            max-width: 520px;
            width: 90%;
            transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
        }

        /* === 标题 === */
        h2 {
            text-align: center;
            color: var(--heading-color);
            margin-top: -6px;
            margin-bottom: 1rem;
            font-weight: 700;
            font-size: 1.5rem;
            letter-spacing: 1.5px;
            text-shadow: 0 2px 4px rgba(0,0,0,0.05);
        }

        /* === 实时时钟：显示在标题下方，不受模式切换影响 === */
        .live-clock {
            text-align: center;
            margin-bottom: 1.2rem;
            padding: 8px 16px;
            background: rgba(255,255,255,0.35);
            border-radius: 10px;
            font-size: 0.95rem;
            color: var(--heading-color);
            font-weight: 500;
            letter-spacing: 0.5px;
        }
        .live-clock .clock-sep {
            display: inline-block;
            width: 1px;
            height: 16px;
            background: rgba(0,0,0,0.15);
            margin: 0 10px;
            vertical-align: middle;
        }
        #clock-date {
            color: var(--accent-color);
        }
        #clock-time {
            font-weight: 700;
            font-size: 1.05rem;
            color: var(--heading-color);
        }
        #clock-weekday {
            margin-left: 6px;
            font-size: 0.85rem;
            color: var(--text-secondary);
        }

