.password-wrapper{
    position:relative;
}

.password-wrapper input{
    padding-right:95px !important;
}

.toggle-password{
    position:absolute !important;
    right:10px !important;
    top:50% !important;
    transform:translateY(-50%) !important;

    height:38px !important;
    min-width:68px !important;

    padding:0 10px !important;
    margin:0 !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    border:none !important;
    border-radius:8px !important;

    background:#ffd700 !important;
    color:#063aa0 !important;

    font-size:13px !important;
    font-weight:bold !important;
    line-height:1 !important;

    cursor:pointer !important;
    z-index:50 !important;
}

.password-hidden{
    -webkit-text-security:disc;
}




@keyframes addToCartBounce{
    0%   {transform:scale(1);}
    30%  {transform:scale(0.92);}
    60%  {transform:scale(1.08);}
    100% {transform:scale(1);}
}

.add-cart-anim{
    animation:addToCartBounce .4s ease;
}


.pokemon-hero{
    width:100%;
    display:flex;
    justify-content:center;
    margin:20px auto 40px;
}

.pokemon-hero img{
    width:min(1200px,92%);
    display:block;
    border-radius:22px;
    box-shadow:0 0 35px rgba(0,0,0,.45);
}




.pokemon-filters{
    width:min(1200px,92%);
    margin:0 auto 30px;
}

.pokemon-filter{
    display:flex;
    justify-content:space-between;
    align-items:center;

    background:#133ea8;
    border:2px solid #ffd700;
    border-radius:15px;

    padding:15px 20px;

    color:white;
    font-size:22px;
    font-weight:bold;
}

.pokemon-filter input[type="checkbox"]{
    width:28px;
    height:28px;
    cursor:pointer;
}


.pokemon-filter{
    margin-bottom:12px;
}



.pokemon-results{
    width:min(1200px,92%);
    margin:20px auto;
    color:white;
    font-size:20px;
    font-weight:bold;
}



.pokemon-filter-title{
    width:min(1200px,92%);
    margin:20px auto 15px;
    color:#ffd700;
    font-size:28px;
    font-weight:bold;
    text-align:left;
}

.pokemon-results{
    width:min(1200px,92%);
    margin:20px auto 30px;
    color:white;
    font-size:20px;
    font-weight:bold;
    text-align:center;
}


.pokemon-back-home{
  display:flex;
  justify-content:center;
  margin:20px 0;
}

.pokemon-back-home button{
  background:#ffd700;
  color:#001b78;
  border:none;
  border-radius:12px;
  padding:12px 24px;
  font-weight:700;
  cursor:pointer;
  transition:.2s;
}

.pokemon-back-home button:hover{
  transform:translateY(-2px);
}



.monster-group{
  display:contents;
}

.monster-image-link{
  display:block;
}

.yugioh-image-link{
  position:static;
  padding:0;
}

.yugioh-image-link{
  padding:0;
}

.yugioh-image-link img {
  width: 200px;
  height: 110px;
  object-fit: cover;
  border-radius: 12px;
  display: block;
  cursor: pointer;
}

.yugioh-image-link img:hover {
  transform: scale(1.04);
  box-shadow: 0 0 18px rgba(255, 0, 0, 0.8);
}






.lorcana-image-link{
    display:block;
    margin-top:20px;
}

.lorcana-image-link img{
    width:200px;
    height:110px;
    object-fit:cover;
    border-radius:10px;
    display:block;
}

.lorcana-image-link img:hover{
    transform:scale(1.04);
    box-shadow:0 0 18px rgba(160,80,255,0.8);
}









.dragonball-image-link{
    display:block;
    margin-top:20px;
}

.dragonball-image-link img{
    width:200px;
    height:110px;
    object-fit:cover;
    border-radius:10px;
    display:block;
}

.dragonball-image-link img:hover{
    transform:scale(1.04);
    box-shadow:0 0 18px rgba(255,200,0,0.8);
}




.onepiece-image-link{
    display:block;
    margin-top:20px;
}

.onepiece-image-link img{
    width:200px;
    height:110px;
    object-fit:cover;
    border-radius:10px;
    display:block;
}

.onepiece-image-link img:hover{
    transform:scale(1.04);
    box-shadow:0 0 18px rgba(0,170,255,0.8);
}


















.verify-container{
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(180deg,#123ee8,#00145f);
  padding:20px;
}

.verify-box{
  width:min(420px,92%);
  background:#0b237d;
  border:2px solid #ffd700;
  border-radius:22px;
  padding:35px;
  text-align:center;
  box-shadow:0 0 35px rgba(0,0,0,.45);
}

.verify-box h1{
  color:#ffd700;
  margin-bottom:25px;
  font-size:34px;
}

.verify-box input{
  width:100%;
  box-sizing:border-box;
  margin-bottom:15px;
  padding:14px;
  border-radius:10px;
  border:none;
  font-size:16px;
}

.verify-box button{
  width:100%;
  padding:14px;
  border:none;
  border-radius:12px;
  background:#ffd700;
  color:#001b78;
  font-weight:bold;
  font-size:16px;
  cursor:pointer;
}

.verify-box button:hover{
  transform:translateY(-2px);
}

#reset-message{
  min-height:25px;
  font-size:16px;
  font-weight:bold;
}








@media (max-width: 768px){

    .monster-group{
        display:contents !important;
        position:static !important;
    }

    .monster-image-link,
    .yugioh-image-link,
    .lorcana-image-link,
    .dragonball-image-link,
    .onepiece-image-link{
        position:static !important;
        left:auto !important;
        top:auto !important;
        display:flex !important;
        justify-content:center !important;
        align-items:center !important;
        width:120px !important;
        margin:0 !important;
        padding:0 !important;
    }

    .monster-image-link img,
    .yugioh-image-link img,
    .lorcana-image-link img,
    .dragonball-image-link img,
    .onepiece-image-link img{
        width:120px !important;
        height:68px !important;
        max-width:120px !important;
        object-fit:cover !important;
        border-radius:10px !important;
    }
}