@font-face {
    font-family: "EvilVampire";
    src: url("/assets/fonts/EvilVampire-Regular.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "EvilVampire";
    src: url("/assets/fonts/EvilVampire-Italic.ttf") format("truetype");
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

body {
    margin: 0;
    background: url("./assets/bg_tile.webp");
    background-repeat: repeat;
}

.medieval {
    font-family: "EvilVampire", cursive;
    font-weight: bolder;
    font-style: normal;
    color: #fff9ed;
}

.stroked-text {
    -webkit-text-stroke: 1px #43230e;
}

@keyframes glow-pulse {

    0%,
    100% {
        box-shadow:
            0 0 24px rgba(14, 108, 49, 0.45),
            0 0 40px rgba(14, 108, 49, 0.55);
    }

    50% {
        box-shadow:
            0 0 36px rgba(14, 108, 49, 0.7),
            0 0 64px rgba(14, 108, 49, 0.9);
    }
}

.glow {
    animation: glow-pulse 2.2s ease-in-out infinite;
}

.main-container {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Wrapper that scales with the image */
.image-wrapper {
    position: relative;
    max-width: 100%;
    max-height: 100vh;
}

.img-crop img {
    width: 104%;
    height: 104%;
    margin: -2%;
    object-fit: cover;
}

.coin-container {
    position: absolute;
    right: 21%;
    bottom: 13.5%;
    /* background-color: dodgerblue;
    opacity: 0.5; */
    width: 10%;
    height: 14%;
    display: flex;
    align-items: center;
    justify-content: center;
    /*5vw works well, people won't resize this as much */
    font-size: 6vw;
}

.name-container {
    position: absolute;
    left: 10%;
    bottom: 22%;
    width: 40%;
    height: 28%;
    font-size: 5vw;
    display: flex;
    align-items: center;
    justify-content: center;
}

.no-caret {
    caret-color: transparent;
}

#player_name {
    font-size: 0.9em;
}

.counter {
    transform: translateY(11%);
    font-size: 0.9em;
    font-weight: bold;
    line-height: 1;
    user-select: none;
    font-weight: bold;
}

.image-wrapper img.character {
    display: block;
    max-width: 100%;
    max-height: 100vh;
    width: auto;
    height: auto;
    object-fit: contain;
    border-radius: 5%;
    clip-path: inset(1%);
    /* box-shadow: rgba(14, 108, 49, 0.6) 16px 16px 16px; */
}

/* Controls (Plus and Minus Buttons) */
.control {
    position: absolute;
    width: 6%;
    min-width: 24px;
    cursor: pointer;
}

.coin-purse {
    position: absolute;
    width: 30%;
    min-width: 24px;
    right: 2.5%;
    bottom: 10%;
}

.plus {
    right: 7%;
    bottom: 25%;
}

.minus {
    right: 7%;
    bottom: 15%;
}

/* Invisible click zone for image cycling */
.cycle-zone {
    position: absolute;
    left: 0;
    top: 0;
    width: 25%;
    height: 25%;
    cursor: pointer;
}