:root{
    --color1: #e8eef1;
    --color2: #43b0f1;
    --color3: #057dcd;
    --color4: #1e3d58;
    --primary-color: #9b59b6;
    --secondary-color: #3498db;
    --accent-color: #e91e63;
    --glow-color: rgba(233, 30, 99, 0.5);
    --font-family: 'Vazirmatn', sans-serif;
    --glass-bg: rgba(255, 255, 255, 0.05);
    --glass-border: rgba(255, 255, 255, 0.1);
    --glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.5);
    --input-bg: rgba(0, 0, 0, 0.2);
    --color-chat-theme: #3fd4c5 ;
    transition:
    --primary-color 0.5s ease,
    --secondary-color 0.5s ease,
    --accent-color 0.5s ease,
    --glow-color 0.5s ease;
}

[data-bs-theme="dark"] {
    --bs-body-bg: #121019;
    --bs-body-color: #e0e0e0;
    --bs-tertiary-bg: #1f1d2b;
    --bs-border-color: #3a384c;
    --bs-border-color-translucent: rgba(255, 255, 255, 0.15);
    --header-bg: rgba(31, 29, 43, 0.7);
    --modal-bg: rgba(18, 16, 25, 0.85);
    --bs-primary: var(--primary-color);
    --bs-secondary: var(--secondary-color);
    --bs-primary-rgb: 155, 89, 182;
    --bs-link-color-rgb: 189, 147, 249;
}

*{
    box-sizing: border-box;

}
p{
    margin-inline: 5px;
}
html{
    font-size: 15px;
}

::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--bs-tertiary-bg); }
::-webkit-scrollbar-thumb { background: var(--primary-color); border-radius: 10px; border: 2px solid var(--bs-tertiary-bg); }
::-webkit-scrollbar-thumb:hover { background: var(--accent-color); }
a{
    text-decoration: none;
    color:var(--color2);

}

.searchbutton{
    display: none;
}

@font-face {
    font-family: vazir;
    src: url(fonts/Vazirmatn-Regular.woff2);
  }
.progress:hover{
    transform: scale(1.05);
    transition: 2;
}
@keyframes about_img_go{
    from{
        opacity: 0;
        transform: scale(0) translateY(15px);
    }
    to{
        opacity: 1;
        transform: scale(1) translateY(0px) ;
    }
}
.about_img{
    width: 100%;
    border-radius: 5px 5px 5px 5px;
}
.about_img{
    animation: about_img_go 3s;
}
.about_img:hover{
    transform: skew(-2deg);
    transition: 3;
}

body{


    font-family: vazir, Tahoma;
    /* background-color: rgb(99, 192, 239); */
    /* background-image: url(../images/bg.jpg); */
    background: var(--color4);
    /* background: linear-gradient(90deg, rgba(2,0,36,1) 0%, rgba(247,254,255,1) 0%, rgba(255,255,255,1) 0%, rgba(0,212,255,1) 100%); */


}
.card-text:hover{
    text-shadow: 0px -5px 10px #e4e4e4 ;

}

.card-text{
    max-height: 200px;
    overflow-y: auto;
}
.bold-text{
    font-weight: bold;
    margin-inline: 25px ;
}
.c-details span {
    font-weight: 300;
    font-size: 13px
}


.main_menu{
    padding :0px;
    display: none;
}
.page{
    font-weight: bold

}
.nav-item{
    margin-block-end: 2px;
}

.nav-item:hover{
    border-block-end : solid;

    margin-block-end: 0px;
    border-color: var(--color4);
    border-width: 2px;
    border-radius: 5px;
    transform: scale(1.09);


}

.main_menu li:hover{
    background-color: rgb(255, 133, 133) ;
    /* transform: scale(0.955) rotate(2deg); */
    transform: scale(1.05)  translatex(-2px) translateY(2px);
    transition: 0.8s;
    box-shadow: none;


}
.main_menu li a{
    display: block;
    color: rgb(55, 71, 75);
}
.main_menu li{
    background-color: #c2e0ff;
    margin: 5px;
    padding: 5px;
    box-shadow: rgb(95, 175, 255) -4px 3px  ;



    border-inline-start-style: solid;
    border-color: var(--color4);
    list-style-type: none;
    border-radius: 10px;

}
.progress-bar{
    width: 75%;
}

body{
    overflow-x:hidden;
}
@keyframes card-v{
    from{
        opacity: 0;
        transform: scale(0);
    }
    to{
        opacity: 1;
        transform: scale(1) rotate(360deg);
    }
}
.card{
    animation: card-v 2s;
}
@keyframes nav-mov{

    from{
        opacity:0;
        transform:  translatey(-150px);
    }
    to{

        opacity:1;
        transform: translateY(0px)
    }


}
.custom-nav-top{
    animation: nav-mov 1s;
}

main{
    display: grid;

    grid-template-columns: 200px auto;
    grid-template-rows: auto auto auto;
    grid-template-areas:

    'header header '

    'aside article'

    'footer footer'
 ;
    gap: 10px;
    width: 950px;
    padding: 10px;
    margin: 0 auto;




}
header{
    grid-area: header;
    min-height: 150px;
    margin-block-start: 50px;


}
.blockquote{
    border-radius: 5px;
}
header .main_menu_top{

    text-align: center;
}
aside nav ul{
    padding: 5px;
}
aside nav ul li{
    list-style-type: none;

}
header .main_menu_top li{
    /* padding-block-end: 10px; */
    margin: 1px;
    background-color: black;
    list-style-type: none;
    border-radius: 10px 0px 10px 10px;
    border-block-end-style: solid;
    border-color: aqua;

}
header .main_menu_top li a{
    color: skyblue;
    display: block;
}
#logo_in_nav{
    width: 25px;
}
header .main_menu_top .page{
    font-weight: 600;
}
header .main_menu_top li:hover{
    background-color: var(--color3) ;
    /* transform: scale(0.955) rotate(2deg); */
    transform: scale(1.05)  translatex(-2px) translateY(2px);

    box-shadow: none;


}
header{
    img{
        max-height: 200px;
        width:"auto";
    }
}
aside{
    grid-area: aside;
    padding-block: 5px;
    text-overflow: ellipsis;
    word-wrap: break-word;


}


.modal-header {
    border-bottom: none;
}
.modal-footer {
    border-top: none;
}
.modal-content {
    border-radius: 1rem;
}
.password,.nameuser{
    direction: ltr !important;
}
.btn-close {
    background-color: #f8f9fa;
    border-radius: 50%;
    padding: 0.5rem;
    position: absolute;
    top: 20px;
    right: 20px;
}
.btn-primary {
    background-color: #007bff;
    border: none;
    border-radius: 1rem;
}
.form-control {
    border-radius: 0.5rem;
}
.navbar-toggler{
    border-width: 0px;
}
#logo{
	max-width:150px;
}
article{
    grid-area: article;
    padding: 10px;
    text-overflow: ellipsis;
    word-wrap: break-word;
}
textarea{
    height: 150px;
}
@keyframes img_scale {

    from{
        opacity:0;
        transform: scale(0);
    }
    to{

        opacity:1;
        transform: scale(1)
    }
}
article .screenshot{
    animation: img_scale 2s;
}
article .screenshot{
    width: 100%;
    border-radius: 5px;
}

.d-grid{
    margin-inline: 30px;
}

article .weblogo{
    width: auto;
    height: 10px;
}
.carousel-item img{
    filter: brightness(40%);
    height: 350px;
}
.carousel-item p{
    position: absolute;
    bottom: 60px;
    right: -10px;
    color: #DAB4B8;
}
.carousel-item h4{
    position: absolute;
    bottom: 100px;
    right: 40px;
    color: #C0EAF2;
}
.carousel-item,.carousel-inner{
    max-height: 350px;
}
.carousel-inner{
    border-radius: 5px 5px 5px 5px;
}
.carousel{
    margin-inline: 20px;
}

article h1{

    border-style: solid ;
    border-width: 3px ;
    border-color: #b0b0b0;
    margin: 25px;
    padding: 25px;
    border-radius: 10px 10px 10px 10px;
    background-color: #f0f0f0;
    color: rgb(48, 48, 48);
    text-align: center;
    text-shadow: 0px -5px 10px rgb(148, 148, 148);
}

article video{
    border-radius: 20px 20px 20px 20px;
}
.video1{
    border-radius: 0px;
}
.navbar{
    width: 100%;
    font-size: 0.82rem;
    border-radius: 5px;
}
.footer1{
    letter-spacing: 10px;

}
.footer{
    font-size: 25px;
}
footer{
    grid-area: footer;
    min-height: 100px;
    direction: ltr;
    text-align: center;


    border-radius: 10px 20px

}
.search-container {
    position: relative;
    display: flex;
    align-items: center;
}

.search-input, .search-button {
    width: 0;
    opacity: 0;
    transition: width 0.5s, opacity 0.5s;
    margin-inline-start: 5px;
    height: calc(2.25rem + 2px);
}

.search-toggle:checked ~ .search-input,
.search-toggle:checked ~ .search-button {
    width: 200px;
    opacity: 1;
}

.search-toggle {
    display: none;
}

.close-button {
    display: none;
    background: none;
    border: none;
    cursor: pointer;
    font-size: 1.2rem;
    color: #333;
    margin-inline-start: 5px;
}

.search-toggle:checked ~ .close-button {
    display: inline;
}

.search-label {
    cursor: pointer;
    font-size: 1.2rem;
    color: #333;
}

.search-toggle:not(:checked) ~ .search-label .bi-x {
    display: none;
}

.search-toggle:checked ~ .search-label .bi-search {
    display: none;
}

.search-button {
    height: auto;
    padding: 0.375rem 0.75rem;
    font-size: 0.875rem;
    line-height: 1.5;
}
.custom-modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.5);
    z-index: 1000;
    overflow: auto;
}
.custom-modal-header {
    position: relative;
    padding: 15px;
    border-bottom: 1px solid #ddd;
    margin-block-end: 5px;
}
.custom-modal-dialog {
    position: relative;
    max-width: 500px;
    margin: 0 auto;
}
.custom-modal-content {
    background: white;
    border-radius: 5px;
    padding: 20px;
}
.custom-close {
    position: absolute;
    top: 10px;
    right: 20px;
    font-size: 28px;
    cursor: pointer;
}
.custom-close:hover {
    color: #dc3545;
    transform: scale(1.2);
    transition: all 0.3s ease;
}

/* footer div{

} */
html,body{
    scroll-behavior:smooth ;
}
header,aside,article{
    border-radius: 10px;
}
header,aside,article,footer{
    background-color: white;
    box-shadow: rgba(0, 0, 0, 0.25) 0px 25px 50px -12px;
}

header:hover,aside:hover,article:hover,footer:hover{
    box-shadow: rgba(0, 0, 0, 0.28) 0px 25px 50px -12px;

}
#logo:hover{

    transform: rotatey(360deg);
    transition: 2s;
}
.gallery{

    div{
        text-align: center;

    }


}
/* .gallery  img{
    width: 125px;
    aspect-ratio: 1;

    border-radius: 50%;
    margin: 10px;
    border-style: groove;
    border-color: var(--color3);
    box-shadow: 0px 0px 5px var(--color2);
} */
.gallery img{
    border-style: groove;
    border-color: var(--color3);
    box-shadow: 0px 0px 5px var(--color2);
    width: 100%;

    object-fit: cover;
}
/* .gallery img:hover{
    transform: rotate(360deg) scale(1.1);
    transition: 1s;

} */
.gallery img:hover{
    transform: rotate(10deg);
    transition: 0.5s;
}
html:hover{

    #btn_top_side{

        opacity: 1;
    }

}

#github{
    color: rgb(140, 140, 140);


}



#github span,#telegram span,#instagram span,#twitter span{
    margin-inline-end:5px;
    color: white;
    font-size: 16px;
    display: none;

}
#github:hover{
        /* color: rgb(140, 140, 140); */
        transition: 1s;
        display: inline-flex;
        align-items: center;
        background-color: #333;
        color: rgb(140, 140, 140);
        padding: 5px 15px;


        margin-block-start: 0px;
        margin-block-end: 5px;
        margin-inline-end: 5px;
        border-radius: 8px;
        text-decoration: none;
        font-size: 16px;
        .icon-tx{
            transition: 1.2s;
            display: inline-block;
        }

        #github i {



            margin-left: 5px;
            font-size: 16px;

       }



}

#telegram:hover{
    /* color: rgb(140, 140, 140); */
    transition: 1s;
    display: inline-flex;
    align-items: center;
    background-color: #333;
    color: #007bff;
    padding: 5px 15px;


    margin-block-start: 0px;
    margin-block-end: 5px;
    margin-inline-end: 5px;
    border-radius: 8px;
    text-decoration: none;
    font-size: 16px;
    .icon-tx{
        transition: 1.2s;
        display: inline-block;
    }

    #telegram i {




        margin-left: 5px;
        font-size: 16px;

   }



}

#instagram:hover{
    /* color: rgb(140, 140, 140); */
    transition: 1s;
    display: inline-flex;
    align-items: center;
    background-color: #333;
    color: red;
    padding: 5px 15px;


    margin-block-start: 0px;
    margin-block-end: 5px;
    margin-inline-end: 5px;
    border-radius: 8px;
    text-decoration: none;
    font-size: 16px;
    .icon-tx{
        transition: 1.2s;
        display: inline-block;
    }

    #instagram i {




        margin-left: 5px;
        font-size: 16px;

   }



}

#twitter:hover{
    /* color: rgb(140, 140, 140); */
    transition: 1s;
    display: inline-flex;
    align-items: center;
    background-color: #333;
    color: #c2e0ff;
    padding: 5px 15px;


    margin-block-start: 0px;
    margin-block-end: 5px;
    margin-inline-end: 5px;
    border-radius: 8px;
    text-decoration: none;
    font-size: 16px;
    .icon-tx{
        transition: 1.2s;
        display: inline-block;
    }

    #twitter i {




        margin-left: 5px;
        font-size: 16px;

   }



}
.footer a{
    margin-right:8px;
}
#twitter{
    color: #c2e0ff;
}
#telegram{
    color: #007bff;

}
#instagram{

    color: red;
}

@keyframes btn_go{
    from{
        transform: scale(0);
    }
    to{
        transform: scale(1);
    }
}
.footer{
    animation: btn_go 3s;
}


#btn_top{
    width: 100px;
    height: auto;
    aspect-ratio: 1;
    margin: 0 auto;
    background-image: url(../images/btn.png);
    display: inline-block;
}
.fource-form{
    color: red;
}
.navbar-mobile{
    display: none;
}

#btn_top_side{

    position: fixed;
    border: solid;
    background-color: white;
    border-width: 1px;
    border-radius: 5px 5px 5px 5px;
    bottom: 25px;
    right: 0px;
    width: 50px;
    height: auto;
    opacity: 0.25;
    aspect-ratio: 1;
    background-image: url(../images/btn_side.png);
    display: none;
    z-index: 1000;

}

#btn_top_side:hover{
    opacity: 1;
    background-position: top right;

}
#btn_top:hover{
    background-position: top right;

}

.card{
    min-width: 250px;

}
.nav-link,.hide_serch{
    white-space: nowrap;
}

.small_search{
    display: none;
    visibility: hidden;
}
@keyframes btn_side{

    from{
        opacity:0;
        transform: scale(0);
    }
    to{

        opacity:1;
        transform: scale(1)
    }

}
#btn_top_side{
    animation: btn_side 1.5s;
}

@keyframes logoPlay{

    from{
        opacity:0;
        transform:  translate(-150px);
    }
    to{

        opacity:1;
        transform: translate(0px)
    }

}
.h_iframe-aparat_embed_frame{
    position:relative;

}
.h_iframe-aparat_embed_frame .ratio{
    display:block;
    width:100%;
    height:auto;
}
.h_iframe-aparat_embed_frame iframe{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}
#logo{
    animation: logoPlay 1.5s;

}

.bi-telegram:hover,.bi-instagram:hover,.bi-twitter-x:hover{
    font-size: 20px;




}
@keyframes text-show{
    from{
        opacity: 0;
        transform: scale(0);
    }
    to{
        opacity: 1;
        transform: scale(1);
    }
}
.carousel-caption{

    animation: text-show 1.5s;
}
.dropdown-menu{

    box-shadow: rgba(0, 0, 0, 0.25) 0px 25px 50px -12px;
}
.dropdown-item:hover{
    background-color: #e4e4e4;
    transform: scale(1.02);
    border-radius: 25px;

}
.as-card{
    min-width: 50%;
}
@keyframes card-none-v{
    from{
        scale: 0;
        opacity: 0;
    }
    to{
        scale: 1;
        opacity: 1;
    }
}
.crad-none{
    transform: none;
    animation: card-none-v 2s;
}

/* responsive design */
@media screen and (max-width: 1024px) {
    #btn_top_side{
        display: inline-block;
    }
    #btn_top{
        display: none;
    }
    .dropdown-menu{
        box-shadow: none;
    }
    .carousel-item img{
        filter: brightness(40%);
        height: 300px;
    }



    .nav-item:hover{
        border-block-end : solid;

        margin-block-end: 0px;
        border-color: var(--color4);
        border-width: 2px;
        border-radius: 5px;
        transform: scale(1.02);


    }
    .nav-item-logo{
        display: none;
    }

    main{
        width: 100%;
    }

}




@media screen and (max-width: 600px) {

    .nav-item-logo{
        display: none;
    }
    header{
    	margin-block-start:100px;
    }
    .carousel-item img{
        filter: brightness(40%);
        height: 250px;
    }


    main{

        grid-template-columns: auto;
        grid-template-areas:
        'header'
        'aside'
        'article'
        'footer'

        ;
    }


}



@media screen and (max-width: 330px) {
    .hide_serch{
        display: none;
        padding-block-start: 5px;
    }
    .navbar-mobile{
        display: block;
    }
    .searchbutton{
        border-radius: 50%;
        font-size: 25px;
        border: none;
        display: inline;
    }

}


body {
    font-family: var(--font-family);
    background-color: var(--bs-body-bg);
    color: var(--bs-body-color);
    transition: background-color 0.3s ease, color 0.3s ease;
}

header.navbar {
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
    background-color: var(--header-bg) !important;
    border-bottom: 1px solid var(--bs-border-color);
}
.header-title {
    font-weight: 900;
    color: var(--bs-body-color);
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 1.5rem;
    transition: color 0.3s ease;
}
.header-logo {
    width: 45px;
    height: 45px;
    object-fit: contain;
}
.navbar-toggler, .theme-switcher-btn {
    border: 1px solid var(--bs-border-color);
    color: var(--bs-body-color);
    width: 42px;
    height: 42px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}


@keyframes neon-border-spin {
    100% {
        transform: rotate(360deg);
    }
}
.form-switch .form-check-input {
    cursor: pointer;
    width: 3.5em;
    height: 1.8em;
    background-color: var(--bs-border-color);
    border-color: var(--bs-border-color);
    transition: background-position .2s ease-in-out, background-color .3s ease;
}
.form-switch .form-check-input:checked {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
}
body.character-theme-active.theme-gojo { --primary-color: #5dadec; --secondary-color: #8b5fbf; --glow-color: rgba(93, 173, 236, 0.5); }
body.character-theme-active.theme-kaneki_ken { --primary-color: #e74c3c; --secondary-color: #95a5a6; --glow-color: rgba(231, 76, 60, 0.6); }
body.character-theme-active.theme-ern { --primary-color: #2ecc71; --secondary-color: #a07d5a; --glow-color: rgba(46, 204, 113, 0.5); }
body.character-theme-active.theme-naruto { --primary-color: #f39c12; --secondary-color: #2980b9; --glow-color: rgba(243, 156, 18, 0.6); }
body.character-theme-active.theme-light_yagami { --primary-color: #c0392b; --secondary-color: #2c3e50; --glow-color: rgba(192, 57, 43, 0.6); }
body.character-theme-active.theme-l { --primary-color: #34495e; --secondary-color: #ecf0f1; --glow-color: rgba(52, 73, 94, 0.6); }
body.character-theme-active.theme-lofi { --primary-color: #e74c3c; --secondary-color: #f1c40f; --glow-color: rgba(231, 76, 60, 0.6); }
body.character-theme-active.theme-bleach { --primary-color: #e67e22; --secondary-color: #2c3e50; --glow-color: rgba(230, 126, 34, 0.6); }
body.character-theme-active.theme-asta { --primary-color: #2c3e50; --secondary-color: #e74c3c; --glow-color: rgba(231, 76, 60, 0.6); }
body.character-theme-active.theme-rias { --primary-color: #e91e63; --secondary-color: #9b59b6; --glow-color: rgba(233, 30, 99, 0.5); }

.glass-panel, .glass-modal .modal-content { background: var(--modal-bg); -webkit-backdrop-filter: blur(15px);backdrop-filter: blur(15px);  border: 1px solid var(--bs-border-color); }
.modal-fullscreen .modal-content { background-color: transparent; }

.circles {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: 0;
    margin: 0;
    padding: 0;
}
.circles li {
    position: absolute;
    display: block;
    list-style: none;
    width: 20px;
    height: 20px;
    background: rgba(255, 255, 255, 0.05);
    animation: animate 25s linear infinite;
    bottom: -150px;
    border-radius: 50%;
}
.circles li:nth-child(1){ left: 25%; width: 80px; height: 80px; animation-delay: 0s; }
.circles li:nth-child(2){ left: 10%; width: 20px; height: 20px; animation-delay: 2s; animation-duration: 12s; }
.circles li:nth-child(3){ left: 70%; width: 20px; height: 20px; animation-delay: 4s; }
.circles li:nth-child(4){ left: 40%; width: 60px; height: 60px; animation-delay: 0s; animation-duration: 18s; }
.circles li:nth-child(5){ left: 65%; width: 20px; height: 20px; animation-delay: 0s; }

@keyframes shake {
    0% { transform: translate(1px, 1px) rotate(0deg); }
    10% { transform: translate(-1px, -2px) rotate(-1deg); }
    20% { transform: translate(-3px, 0px) rotate(1deg); }
    30% { transform: translate(3px, 2px) rotate(0deg); }
    40% { transform: translate(1px, -1px) rotate(1deg); }
    50% { transform: translate(-1px, 2px) rotate(-1deg); }
    60% { transform: translate(-3px, 1px) rotate(0deg); }
    70% { transform: translate(3px, 1px) rotate(-1deg); }
    80% { transform: translate(-1px, -1px) rotate(1deg); }
    90% { transform: translate(1px, 2px) rotate(0deg); }
    100% { transform: translate(1px, -2px) rotate(-1deg); }
}
@keyframes animate {
    0%{ transform: translateY(0) rotate(0deg); opacity: 1; border-radius: 0; }
    100%{ transform: translateY(-1000px) rotate(720deg); opacity: 0; border-radius: 50%; }
}

@keyframes pulse-heart {
    0% { transform: scale(1); }
    50% { transform: scale(1.4); }
    100% { transform: scale(1); }
}

@keyframes slideInUp {
from {
    transform: translateY(100%);
    opacity: 0;
}
to {
    transform: translateY(0);
    opacity: 1;
}
}
@keyframes character-fade { 0% { opacity: 0; transform: scale(1) rotate(-5deg); } 10% { opacity: 0.5; transform: scale(1.05) rotate(0deg); } 20% { opacity: 0.5; transform: scale(1.05) rotate(0deg); } 25% { opacity: 0; transform: scale(1.1) rotate(5deg); } 100% { opacity: 0; } }

@keyframes shine {
    100% { left: 150%; }
}
@keyframes phone-ring {
    0%, 100% { transform: rotate(0); }
    25% { transform: rotate(10deg); }
    50% { transform: rotate(-10deg); }
    75% { transform: rotate(5deg); }
}
@keyframes pulse-fab {
    0% { transform: scale(1); box-shadow: 0 4px 15px rgba(var(--bs-primary-rgb), 0.6); }
    50% { transform: scale(1.05); box-shadow: 0 6px 20px rgba(var(--bs-primary-rgb), 0.8); }
    100% { transform: scale(1); box-shadow: 0 4px 15px rgba(var(--bs-primary-rgb), 0.6); }
}
@keyframes fade-in-right {
    from { opacity: 0; transform: translateX(20px); }
    to { opacity: 1; transform: translateX(0); }
}
@keyframes fade-in-left {
    from { opacity: 0; transform: translateX(-20px); }
    to { opacity: 1; transform: translateX(0); }
}

@media (hover: hover) {
    .anime-card:hover .card-image-wrapper {
        box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
        transition: box-shadow 0.3s ease-in-out;
    }
}

