:root {

    --primary-color: #8c52ff;

    --secondary-color: #5ce1e6;

    --dark-color: #222639;

    --light-color: #f5f5f7;

    --accent-color: #ff5e84;

    --gradient: linear-gradient(135deg, var(--primary-color), var(--secondary-color));

}



.foot {

    text-align: center;

    font-size: 12px;

    color: #fff;

    line-height: 13px;

    margin-left: 4px;

    /* margin-top: 4rem; */

}



a {

    color: #fff;

}



* {

    margin: 0;

    padding: 0;

    box-sizing: border-box;

}



body {

    font-family: 'Poppins', sans-serif;

    background-color: var(--light-color);

    color: var(--dark-color);

    line-height: 1.6;

}



.container {

    max-width: 1200px;

    margin: 0 auto;

    padding: 0 20px;

}



/* Header Styles */

header {

    background-color: white;

    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);

    position: sticky;

    top: 0;

    z-index: 100;

}



header .container {

    display: flex;

    justify-content: space-between;

    align-items: center;

    padding: 15px 20px;

}



.logo h1 {

    font-size: 1.8rem;

    font-weight: 700;

}



.logo span {

    color: var(--primary-color);

}



.search-container {

    flex-grow: 1;

    max-width: 500px;

    margin: 0 20px;

}



.search-box {

    display: flex;

    align-items: center;

    background-color: #f0f0f5;

    border-radius: 50px;

    padding: 10px 20px;

    cursor: pointer;

    transition: all 0.3s ease;

}



.search-box:hover {

    background-color: #e8e8f0;

}



.search-box i {

    color: var(--dark-color);

    margin-right: 10px;

}



.search-box span {

    color: #888;

}



.menu-icon {

    display: none;

    font-size: 1.5rem;

    cursor: pointer;

}



/* Navigation */

nav {

    background-color: white;

    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);

    display: none;

}



nav ul {

    list-style: none;

    display: flex;

    justify-content: center;

}



nav ul li {

    margin: 0 15px;

}



nav ul li a {

    display: block;

    padding: 15px 10px;

    text-decoration: none;

    color: var(--dark-color);

    font-weight: 500;

    position: relative;

}



nav ul li a.active,
nav ul li a:hover {

    color: var(--primary-color);

}



nav ul li a.active::after,
nav ul li a:hover::after {

    content: '';

    position: absolute;

    bottom: 0;

    left: 0;

    width: 100%;

    height: 3px;

    background: var(--gradient);

    border-radius: 5px 5px 0 0;

}



/* Main Content */

main {

    padding: 20px 0 40px;

}



section {

    margin-bottom: 30px;

}



h2 {

    font-size: 1.8rem;

    margin-bottom: 20px;

    position: relative;

    display: inline-block;

}



h2::after {

    content: '';

    position: absolute;

    bottom: -5px;

    left: 0;

    width: 50%;

    height: 3px;

    background: var(--gradient);

    border-radius: 5px;

}



/* Featured Section */

.featured-slider {

    border-radius: 15px;

    overflow: hidden;

    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);

}



.featured-game {

    position: relative;

    width: 100%;

}



.featured-game img {

    width: 100%;

    height: auto;

    display: block;

}



.featured-info {

    position: absolute;

    bottom: 0;

    left: 0;

    right: 0;

    padding: 20px;

    background: linear-gradient(0deg, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 100%);

    color: white;

}



.featured-info h3 {

    font-size: 1.8rem;

    margin-bottom: 5px;

}



.play-btn {

    background: var(--gradient);

    color: white;

    border: none;

    padding: 8px 20px;

    border-radius: 50px;

    font-weight: 600;

    margin-top: 10px;

    cursor: pointer;

    transition: all 0.3s ease;

}



.play-btn:hover {

    transform: translateY(-2px);

    box-shadow: 0 5px 15px rgba(140, 82, 255, 0.3);

}



/* Categories Section */

.category-tabs {

    display: flex;

    overflow-x: auto;

    padding-bottom: 10px;

    margin-bottom: 20px;

    -ms-overflow-style: none;

    scrollbar-width: none;

}



.category-tabs::-webkit-scrollbar {

    display: none;

}



.category-btn {

    background-color: white;

    color: var(--dark-color);

    border: none;

    padding: 8px 20px;

    border-radius: 50px;

    margin-right: 10px;

    font-weight: 500;

    cursor: pointer;

    transition: all 0.3s ease;

    white-space: nowrap;

    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);

}



.category-btn.active,
.category-btn:hover {

    background: var(--gradient);

    color: white;

}



/* Games Grid */

.games-grid {

    display: grid;

    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));

    gap: 20px;

}



.game-card {

    background-color: white;

    border-radius: 15px;

    overflow: hidden;

    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);

    transition: all 0.3s ease;

}



.game-card:hover {

    transform: translateY(-5px);

    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.15);

}



.game-img {

    width: 100%;

    aspect-ratio: 1 / 1;

    object-fit: cover;

}



.game-info {

    padding: 12px;

}



.game-info h3 {

    font-size: 1rem;

    margin-bottom: 5px;

    white-space: nowrap;

    overflow: hidden;

    text-overflow: ellipsis;

}



.game-category {

    display: inline-block;

    background-color: #f0f0f5;

    color: var(--dark-color);

    padding: 3px 10px;

    font-size: 0.7rem;

    border-radius: 50px;

    margin-bottom: 5px;

}



.game-rating {

    display: flex;

    align-items: center;

    font-size: 0.8rem;

}



.stars {

    color: #ffc107;

    margin-right: 5px;

}



/* Footer */

footer {

    background-color: var(--dark-color);

    color: white;

    padding: 40px 0 20px;

}



.footer-content {

    display: grid;

    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));

    gap: 30px;

    margin-bottom: 30px;

}



.footer-logo h2 {

    font-size: 1.8rem;

    margin-bottom: 10px;

}



.footer-logo span {

    color: var(--secondary-color);

}



.footer-logo p {

    opacity: 0.7;

}



.footer-links h3,
.footer-social h3 {

    font-size: 1.2rem;

    margin-bottom: 15px;

    position: relative;

    display: inline-block;

}



.footer-links h3::after,
.footer-social h3::after {

    content: '';

    position: absolute;

    bottom: -5px;

    left: 0;

    width: 40px;

    height: 3px;

    background: var(--gradient);

    border-radius: 5px;

}



.footer-links ul {

    list-style: none;

}



.footer-links ul li {

    margin-bottom: 10px;

}



.footer-links ul li a {

    color: white;

    opacity: 0.7;

    text-decoration: none;

    transition: all 0.3s ease;

}



.footer-links ul li a:hover {

    opacity: 1;

    color: var(--secondary-color);

}



.social-icons {

    display: flex;

}



.social-icons a {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 40px;

    height: 40px;

    background-color: rgba(255, 255, 255, 0.1);

    border-radius: 50%;

    margin-right: 10px;

    color: white;

    transition: all 0.3s ease;

}



.social-icons a:hover {

    background: var(--gradient);

    transform: translateY(-3px);

}



.copyright {

    text-align: center;

    padding-top: 20px;

    border-top: 1px solid rgba(255, 255, 255, 0.1);

    font-size: 0.9rem;

    opacity: 0.7;

}



/* Media Queries */

@media (max-width: 768px) {

    .menu-icon {

        display: block;

    }



    nav {

        display: none;

    }



    nav.active {

        display: block;

    }



    nav ul {

        flex-direction: column;

    }



    nav ul li {

        margin: 0;

        border-bottom: 1px solid #f0f0f0;

    }



    nav ul li a {

        padding: 15px 20px;

    }



    .search-container {

        max-width: none;

    }



    .featured-info h3 {

        font-size: 1.4rem;

    }



    .featured-info p {

        font-size: 0.9rem;

    }



    .games-grid {

        grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));

        gap: 15px;

    }

}



@media (max-width: 480px) {

    header .container {

        padding: 10px;

    }



    .logo h1 {

        font-size: 1.4rem;

    }



    .search-container {

        margin: 0 10px;

    }



    .search-box {

        padding: 8px 15px;

    }



    h2 {

        font-size: 1.5rem;

    }



    .featured-info h3 {

        font-size: 1.2rem;

    }



    .featured-info p {

        display: none;

    }



    .games-grid {

        grid-template-columns: repeat(2, 1fr);

        gap: 12px;

    }

}



/* 添加页面加载器样式 */

.page-loader {

    position: fixed;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    background-color: var(--light-color);

    display: flex;

    justify-content: center;

    align-items: center;

    z-index: 9999;

    transition: opacity 0.5s ease, visibility 0.5s ease;

}



.loader {

    width: 50px;

    height: 50px;

    border: 5px solid rgba(140, 82, 255, 0.3);

    border-radius: 50%;

    border-top-color: var(--primary-color);

    animation: spin 1s infinite linear;

}



@keyframes spin {

    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }

}



.page-loader.hidden {

    opacity: 0;

    visibility: hidden;

}



/* 遮罩层样式 */

.overlay {

    position: fixed;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    background-color: rgba(0, 0, 0, 0.5);

    z-index: 90;

    display: none;

}



/* 移动导航样式 */

#mobileNav {

    position: fixed;

    top: 0;

    right: -280px;

    width: 280px;

    height: 100%;

    background-color: white;

    z-index: 100;

    box-shadow: -5px 0 15px rgba(0, 0, 0, 0.1);

    transition: right 0.3s ease;

    display: flex;

    flex-direction: column;

    overflow-y: auto;

}



#mobileNav.active {

    right: 0;

}



.nav-header {

    display: flex;

    justify-content: space-between;

    align-items: center;

    padding: 15px 20px;

    border-bottom: 1px solid #f0f0f0;

}



.close-menu {

    font-size: 1.5rem;

    cursor: pointer;

}



#mobileNav ul {

    list-style: none;

    padding: 20px 0;

    flex-grow: 1;

}



#mobileNav ul li a {

    display: flex;

    align-items: center;

    padding: 15px 20px;

    text-decoration: none;

    color: var(--dark-color);

    transition: all 0.3s ease;

}



#mobileNav ul li a i {

    margin-right: 15px;

    width: 20px;

    text-align: center;

}



#mobileNav ul li a.active,
#mobileNav ul li a:hover {

    background-color: #f5f5f7;

    color: var(--primary-color);

}



.nav-footer {

    padding: 20px;

    border-top: 1px solid #f0f0f0;

}



.user-profile {

    display: flex;

    align-items: center;

    margin-bottom: 15px;

}



.avatar {

    width: 50px;

    height: 50px;

    border-radius: 50%;

    overflow: hidden;

    margin-right: 15px;

}



.avatar img {

    width: 100%;

    height: 100%;

    object-fit: cover;

}



.user-info h3 {

    font-size: 1rem;

    margin-bottom: 3px;

}



.user-info p {

    font-size: 0.8rem;

    color: #888;

}



.nav-buttons {

    display: flex;

    gap: 10px;

}



.btn {

    padding: 8px 15px;

    border-radius: 50px;

    border: none;

    font-weight: 500;

    cursor: pointer;

    transition: all 0.3s ease;

}



.btn-primary {

    background: var(--gradient);

    color: white;

}



.btn-outline {

    background: transparent;

    border: 1px solid var(--primary-color);

    color: var(--primary-color);

}



/* 模态框样式 */

.modal {

    display: none;

    position: fixed;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    background-color: rgba(0, 0, 0, 0.7);

    z-index: 1000;

    overflow-y: auto;

}



.modal-content {

    background-color: white;

    margin: 50px auto;

    max-width: 800px;

    border-radius: 15px;

    overflow: hidden;

    animation: modalFadeIn 0.3s ease;

}



@keyframes modalFadeIn {

    from {
        opacity: 0;
        transform: translateY(-50px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }

}



.modal-header {

    display: flex;

    justify-content: flex-end;

    padding: 15px;

}



.close-modal {

    font-size: 1.8rem;

    cursor: pointer;

    color: #888;

    transition: all 0.3s ease;

}



.close-modal:hover {

    color: var(--primary-color);

}



.modal-body {

    padding: 0 20px 20px;

}



.modal-game {

    display: flex;

    flex-direction: column;

}



.modal-game-img {

    width: 100%;

    border-radius: 10px;

    margin-bottom: 20px;

}



.modal-game-info h2 {

    margin-bottom: 10px;

}



.modal-game-info p {

    margin: 15px 0;

}



.btn-play {

    background: var(--gradient);

    color: white;

    border: none;

    padding: 10px 25px;

    border-radius: 50px;

    font-weight: 600;

    cursor: pointer;

    transition: all 0.3s ease;

    display: inline-flex;

    align-items: center;

}



.btn-play i {

    margin-right: 8px;

}



.btn-play:hover {

    transform: translateY(-2px);

    box-shadow: 0 5px 15px rgba(140, 82, 255, 0.3);

}



@media (min-width: 768px) {

    .modal-game {

        flex-direction: row;

    }



    .modal-game-img {

        width: 300px;

        margin-right: 20px;

        margin-bottom: 0;

    }



    .modal-game-info {

        flex-grow: 1;

    }

}



/* 确保按钮链接样式正确 */

a.btn-play {

    display: inline-flex;

    align-items: center;

    background: var(--gradient);

    color: white;

    border: none;

    padding: 10px 25px;

    border-radius: 50px;

    font-weight: 600;

    cursor: pointer;

    transition: all 0.3s ease;

    text-decoration: none;

}



a.btn-play i {

    margin-right: 8px;

}



a.btn-play:hover {

    transform: translateY(-2px);

    box-shadow: 0 5px 15px rgba(140, 82, 255, 0.3);

}



/* 确保特色游戏中的按钮链接样式正确 */

.featured-info a.btn-play {

    margin-top: 10px;

}

.ads {
    width: 23.4375rem;
    height: 15.625rem;
}