        /* 严格遵守规则：不使用 body, *, html 选择器，所有样式基于类名 */
        .app-root {
            font-family: 'Segoe UI', system-ui, -apple-system, 'Roboto', Helvetica, sans-serif;
            background: linear-gradient(145deg, #F8FBFE 0%, #F0F5FA 100%);
            min-height: 100vh;
            display: flex;
            flex-direction: column;
        }
        
        .main-container {
            max-width: 1000px;
            width: 100%;
            margin: 0 auto;
            padding: 2rem 2rem 2rem;
            box-sizing: border-box;
            flex: 1;
            display: flex;
            flex-direction: column;
        }
        
        /* 头部区域 - 标题居中 */
        .hero-section {
            text-align: center;
            margin-bottom: 3rem;
        }
        
        .hero-badge {
            display: inline-block;
            background: rgba(11, 43, 94, 0.08);
            padding: 0.3rem 1.2rem;
            border-radius: 40px;
            font-size: 0.85rem;
            font-weight: 500;
            color: #0B2B5E;
            margin-bottom: 1rem;
            backdrop-filter: blur(2px);
        }
        
        .hero-title {
            font-size: 2.6rem;
            font-weight: 700;
            letter-spacing: -0.02em;
            margin: 0 0 0.5rem;
            background: linear-gradient(135deg, #0B2B5E 0%, #1E4A7A 100%);
            background-clip: text;
            -webkit-background-clip: text;
            color: transparent;
        }
        
        .hero-sub {
            font-size: 1.1rem;
            color: #5A6E85;
            font-weight: 400;
            margin: 0;
        }
        
        /* 垂直卡片列表布局 */
        .cards-list {
            display: flex;
            flex-direction: column;
            gap: 1.2rem;
            margin: 1.5rem 0 2rem;
        }
        
        /* 卡片样式：背景透明，无边框，圆角减小 */
        .nav-card {
            background: transparent;
            border-radius: 12px;  /* 减小圆角 */
            text-decoration: none;
            display: block;
            transition: background-color 0.2s;
        }
        
        /* 悬停时仅改变背景色，无位移效果 */
        .nav-card:hover {
            background: rgba(11, 43, 94, 0.03);
        }
        
        .card-inner {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 1.6rem 2rem;
            gap: 1.8rem;
        }
        
        .card-content {
            flex: 1;
        }
        
        .card-content h3 {
            font-size: 1.5rem;
            font-weight: 600;
            margin: 0 0 0.4rem;
            color: #0F2C4F;
        }
        
        .card-content p {
            color: #6F85A0;
            font-size: 0.95rem;
            line-height: 1.4;
            margin: 0;
        }
        
        /* 按钮圆角也减小，无图标 */
        .card-action {
            background: rgba(11, 43, 94, 0.08);
            border-radius: 12px;  /* 减小圆角 */
            padding: 0.7rem 1.4rem;
            font-weight: 500;
            font-size: 0.95rem;
            color: #0B2B5E;
            white-space: nowrap;
            transition: background 0.2s;
        }
        
        .nav-card:hover .card-action {
            background: rgba(11, 43, 94, 0.15);
        }
        
        /* 模板卡片特殊样式：保持透明背景，悬停效果略淡 */
        .template-card {
            cursor: default;
        }
        
        .template-card:hover {
            background: transparent;
        }
        
        .template-card .card-action {
            background: rgba(100, 120, 140, 0.1);
            color: #8A9BB0;
        }
        
        .template-card:hover .card-action {
            background: rgba(100, 120, 140, 0.15);
        }
        
        /* 底部区域 */
        .footer-note {
            margin-top: auto;
            text-align: center;
            font-size: 0.75rem;
            color: #9AAEBF;
            border-top: 1px solid rgba(11, 43, 94, 0.08);
            padding-top: 1.8rem;
            margin-top: 2rem;
        }
        
        /* 移动端适配：卡片内边距调整，action按钮换行 */
        @media (max-width: 700px) {
            .main-container {
                padding: 1.5rem;
                max-width: 100%;
            }
            .hero-title {
                font-size: 2rem;
            }
            .card-inner {
                flex-direction: column;
                text-align: center;
                padding: 1.5rem;
                gap: 1rem;
            }
            .card-action {
                align-self: center;
                white-space: normal;
            }
            .cards-list {
                gap: 1rem;
            }
        }