/* roulang page: index */
:root {
            --color-bg-base: #f8fafc;
            --color-surface: #ffffff;
            --color-border: #e2e8f0;
            --color-teal: #0891b2;
            --color-copper: #d97706;
            --color-dark: #0b0f19;
        }

        body {
            font-family: system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;
            background-color: var(--color-bg-base);
            color: #1e293b;
            line-height: 1.65;
            -webkit-font-smoothing: antialiased;
        }

        .industrial-grid {
            background-image: radial-gradient(rgba(8, 145, 178, 0.08) 1px, transparent 0);
            background-size: 24px 24px;
        }

        .dark-grid {
            background-image: radial-gradient(rgba(217, 119, 6, 0.12) 1px, transparent 0);
            background-size: 28px 28px;
        }

        .font-mono-data {
            font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
        }

        /* 工业卡片边界微质感 */
        .tech-card {
            background: #ffffff;
            border: 1px solid #e2e8f0;
            border-radius: 4px;
            transition: all 0.25s ease-in-out;
            box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
        }

        .tech-card:hover {
            border-color: #0891b2;
            transform: translateY(-2px);
            box-shadow: 0 10px 20px -5px rgba(8, 145, 178, 0.08);
        }

        .tech-card-dark {
            background: #111827;
            border: 1px solid #1e293b;
            border-radius: 4px;
            transition: all 0.25s ease;
        }

        .tech-card-dark:hover {
            border-color: #d97706;
            transform: translateY(-2px);
        }

        /* 锚点防遮挡 */
        section {
            scroll-margin-top: 110px;
        }
