 * {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
            font-family: Arial, sans-serif;
        }

        body {
            background-color: #f5f5f5;
            display: flex;
            justify-content: center;
            align-items: center;
            min-height: 100vh;
            padding: 20px;
        }

        /* Khung viền bao bọc bên ngoài toàn trang - nới rộng để đủ không gian nằm ngang */
        .wrapper {
            width: 100%;
            max-width: 1100px; 
            background-color: #ffffff;
            border: 2px solid #3b7ad9;
            padding: 30px;
            border-radius: 4px;
        }

        /* --- BANNER EFFECT --- */
        .banner {
            width: 100%;
            height: 100px;
            display: flex;
            justify-content: center;
            align-items: center;
            margin-bottom: 50px; /* Tăng khoảng cách dưới banner */
            border-radius: 4px;
            animation: changeBgColor 6s infinite alternate ease-in-out;
        }

        .banner span {
            font-weight: bold;
            letter-spacing: 2px;
            color: #000000;
            animation: changeFontSize 6s infinite alternate ease-in-out;
        }

        @keyframes changeBgColor {
            0% { background-color: #ff1493; }
            50% { background-color: #e6005c; }
            100% { background-color: #ff00ff; }
        }

        @keyframes changeFontSize {
            0% { font-size: 14px; }
            100% { font-size: 28px; }
        }

        /* --- CONTAINER XẾP HÀNG NGANG --- */
        .content-row {
            display: flex;
            flex-direction: row;      /* Xếp các phần tử thành một hàng ngang */
            justify-content: center;  /* Căn giữa toàn bộ các khung */
            gap: 50px;                /* Tạo khoảng cách 50px rất rộng để khi khung 4 xoay không bị dính */
            width: 100%;
            padding: 20px 0;          /* Tạo không gian đệm trên dưới cho khung xoay thoải mái */
        }

        /* Kích thước chung cho cả 4 khối hộp */
        .box-item {
            width: 180px;             /* Thu nhỏ nhẹ đường kính khung để tối ưu diện tích hàng ngang */
            height: 180px;
            display: flex;
            justify-content: center;
            align-items: center;
            text-align: center;
            flex-shrink: 0;           /* Không cho phép các khung bị bóp méo hình dạng */
        }

        /* --- BOX 1 (IMAGE CHANGER) --- */
        .box-1 {
            border: 4px solid #cc0000;
            position: relative;
            background-size: cover;
            background-position: center;
            animation: changeImages 8s infinite ease-in-out;
        }

        .box-1 .number {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            font-size: 32px;
            font-weight: bold;
            color: #ffeb3b;
            text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.8);
        }

        @keyframes changeImages {
            0%, 45% {
                background-image: url('https://picsum.photos/id/1015/400/400');
            }
            55%, 100% {
                background-image: url('https://picsum.photos/id/1016/400/400');
            }
        }

        /* --- BOX 2 (BLUE BORDER) --- */
        .box-2 {
            background-color: #00ffff;
            border: 4px dashed #0000ff;
            border-top-right-radius: 40px;
            border-bottom-left-radius: 40px;
        }

        .box-2 .number {
            font-size: 32px;
            color: #ffeb3b;
            font-weight: bold;
        }

        /* --- BOX 3 (PINK BORDER) --- */
        .box-3 {
            background-color: #00ffff;
            border: 4px dotted #ff00ff;
            border-top-left-radius: 40px;
            border-bottom-right-radius: 40px;
        }

        .box-3 .number {
            font-size: 32px;
            color: #ffeb3b;
            font-weight: bold;
        }

        /* --- BOX 4 (ROTATE EFFECT) --- */
        .box-4 {
            background-color: #0a7e7f;
            border: 2px solid #8bc34a;
            animation: rotateBox 10s infinite linear;
        }

        .box-4 .text {
            font-size: 18px;
            color: #ffeb3b;
            font-weight: bold;
            transform: scaleY(-1); 
        }

        @keyframes rotateBox {
            0% {
                transform: rotate(0deg);
            }
            100% {
                transform: rotate(360deg);
            }
        }