@font-face {
    font-family: LHF_Billhead_1890;
    src: url(../../media/fonts/lhf_billhead_18901.ttf);
}

@font-face {
    font-family: Cruickshank;
    src: url(../../media/fonts/CRUICKSH.TTF);
}

@font-face {
    font-family: CherrySwash-Regular;
    src: url(../../media/fonts/GoogleFonts/Cherry_Swash/CherrySwash-Regular.ttf);
}

@font-face {
    font-family: Italianno-Regular;
    src: url(../../media/fonts/GoogleFonts/Italianno/Italianno-Regular.ttf);
}

@font-face {
    font-family: Rye-Regular;
    src: url(../../media/fonts/Rye-Regular.ttf);
}

@font-face {
    font-family: BLACKCHA;
    src: url(../../media/fonts/BLACKCHA.TTF);
}

body {
    margin: 0;
    padding: 0;
    background: #090b10;
}

tbody {
	counter-reset: myCount; /* Set the counter to 0 */
}

.myCount:before {
    counter-increment: myCount;      /* Increment the counter */
    content: counter(myCount) ". "; /* Display the counter */
		/* Need tbody counter-reset myCount, Set the counter to 0 */
}

button {
    font-family: LHF_Billhead_1890;
    font-size: 30px;
    background-color: rgba(31, 4, 93, 0.9);
    color: wheat;
    border: 0.125rem solid black;
    margin: 1px;
}

button:hover {
    background: rgba(67, 47, 109, 0.8);
    color: white;
}

.button-normal {
    background-color: rgba(31, 4, 93, 0.9);
    color: wheat;
}

.button-active {
    background-color: rgba(15, 3, 41, 0.9);
    color: gold;
}

.gold_button {
    font-family: LHF_Billhead_1890;
    font-size: 30px;
    background: goldenrod;
    color: black;
    border: 0.125rem solid black;
    margin: 1px;
    /*max-height: 2.5rem;*/
}

.gold_button:hover {
    background: gold;
    color: rgb(58, 16, 149);
}

.gold_button-active {
    background-color: black;
    color: gold;
}

.gold_button-active:hover {
    background-color:#373434;
    color: goldenrod;
}

input[type=submit] {
    font-family: LHF_Billhead_1890;
    font-size: 32px;
    background: goldenrod;
    border: 2px solid black;
    margin: 1px;
}

input[type=submit]:hover {
    background: gold;
    color: rgb(58, 16, 149);
}

p{
    padding: 0;
    margin: 0;
}

#holder_index {
    max-width: 100%;
	display: flex;
	flex-wrap: nowrap;
    align-items: flex-start;
    min-height: 100vh;
    overflow: visible;
}

#sidebar_index_left {
    font-family: CherrySwash-Regular;
    font-size: 20px;
    width: clamp(14.5rem, 16%, 18rem);
    left: 0;
    background: url(../../media/img/map_ex.png);
    background-size: cover;
    color: black;
    padding: 10px;
    box-sizing: border-box;
    height: 100vh;
    overflow: auto;
    flex: 0 1 clamp(14.5rem, 16%, 18rem);
}

#index_hunt_logo {
    display: block;
    width: 100%;
    max-width: 100%;
    padding: 0 10px;
    box-sizing: border-box;
}

#sidebar_index_right {
    font-family: CherrySwash-Regular;
    right: 0;
    width: clamp(20rem, 22%, 23rem);
    background: url(../../media/img/hunt_black_background_small.jpg);
    background-size: cover;
    color: whitesmoke;
    padding: 20px;
    box-sizing: border-box;
    height: 100vh;
    overflow: auto;
    flex: 0 1 clamp(20rem, 22%, 23rem);
}

.small_map img {
    will-change: transform;
}

#pic_of_the_day {
    width: 100%;
    overflow: hidden;
}

#pic_of_the_day img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    box-sizing: border-box;
}

.small_map {
    backface-visibility: hidden;
    transform-style: preserve-3d;
}

.small_map{
    text-align: center; /* Center the text and image horizontally */
    margin: 30px 15px 15px 15px; /* Add some spacing between the image containers */
    transform: scale(1); /* Set the initial scale to 1 (no scaling) to smoothly scale the div back to its original size when the mouse leaves the div area */
    transition: transform 0.5s ease; /* Add a smooth transition effect */
}

.small_map:hover{
    transform: scale(1.1); /* Increase the size by 10% on hover */
}

#index_holder_1 {
    flex: 1 1 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: auto;
    /*max-width: 1200px;*/
    margin: 0 auto;
    background: url(../../media/img/sweet.jpg) top center;
    background-size: cover;
    min-height: 100vh;
    min-width: 0;
    overflow: hidden;
}

#index_holder_1 img {
    cursor: pointer;
    max-width: 100%;
    height: auto;
    object-fit: cover;
    flex: 1 1 200px; /* grow/shrink, with a base width */
}

#index_holder_2 {
	display: flex;
    justify-content: center;
    flex-grow: 1;
    align-items: flex-start;
    overflow: hidden;
    margin-top: 3.2rem;
    width: 100%;
    padding: 0 0.9rem 1rem;
}

.text_sidebar {
    font-size: 26px;
    text-align: center; 
    padding:0; 
    margin:0; 
    text-shadow: -1px -1px 0 white, 1px -1px 0 white, -1px 1px 0 white, 1px 1px 0 white;
}

.bg_header{
    cursor: pointer; 
    border: 0.125rem solid black;
    font-size: 34px;
    text-align: center;
    text-shadow: -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;
    color: goldenrod;
    padding:0.6rem;
    margin: 0.5rem 0 0.5rem 0;
    font-weight: normal;
}

.bg_header:hover{
    background: rgba(67, 47, 109, 0.8);
}

#grow input:checked{color:red;}

#grow {
    -moz-transition: height .5s;
    -ms-transition: height .5s;
    -o-transition: height .5s;
    -webkit-transition: height .5s;
    transition: height .5s;
    transition: padding .5s;
    height: 0;
    overflow: hidden;
}

.tooltip2 {
    position: relative;
    display: inline-block;
    border-bottom: 1px dotted black;
    z-index: 50;
}

.tooltip2 .tooltiptext {
    visibility: hidden;
    width: 19rem;
    background: url(../../media/img/hunt_black_background_small.jpg);
    color: #fff;
    text-align: center;
    border-radius: 6px;
    padding: 5px 0;
    position: absolute;
    z-index: 50;
    top: 90%;
    left: 100%;
    margin-left: -60px;
    opacity: 0;
    transition: opacity 0.3s;
    border-style: double;
    border-width: 5px;
    border-color: whitesmoke;
    padding: 2px;
}

.tooltip2 .tooltiptext::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: #55555581 transparent transparent transparent;
}

.tooltip2:hover .tooltiptext {
    visibility: visible;
    opacity: 1;
}

#mobile-message {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: #ffcc00;
    padding: 10px;
    text-align: center;
    z-index: 9999;
}

#close-button {
    cursor: pointer;
    color: #333;
    font-weight: bold;
    border: 2px solid #333; /* Add border properties here */
    padding: 5px 10px; /* Adjust padding as needed */
    border-radius: 5px; /* Optional: Add border-radius for rounded corners */
    display: inline-block;
}

.header_index{
    cursor: pointer;
    text-align: center;
    font-family: Cruickshank;
}

.mode-stage {
    width: min(760px, 100%);
    margin: 0 auto;
    padding: 0.5rem 0 0.9rem;
}

.mode-stage-grid {
    display: grid;
    grid-template-columns: 1fr 1.02fr 1fr;
    grid-template-areas:
        ". guesser figures"
        "quiz . shuffle";
    gap: clamp(0.55rem, 0.9vw, 0.95rem) clamp(0.6rem, 1vw, 0.95rem);
    align-items: start;
    justify-items: center;
    perspective: 1800px;
}

.mode-flip-small.mode-card-figures {
    max-width: clamp(180px, 12vw, 205px);
}
.mode-flip-small.mode-card-prep {
    max-width: 200px;
}
.mode-flip-small.mode-card-shuffle {
    max-width: clamp(195px, 13vw, 225px);
}
.mode-flip-small.mode-card-quiz {
    max-width: clamp(205px, 13.5vw, 235px);
}

.mode-card-figures {
    grid-area: figures;
    transform: translate(0.3rem, -0.25rem) rotate(-0.2deg);
}

.mode-card-guesser {
    grid-area: guesser;
    transform: translate(0, 7rem) rotate(0.5deg);
}

.mode-card-prep {
    grid-area: prep;
    transform: translate(-1rem, -0.6rem) rotate(1.8deg);
}

.mode-card-shuffle {
    grid-area: shuffle;
    transform: translate(0.45rem, -0.2rem) rotate(-0.9deg);
}

.mode-card-quiz {
    grid-area: quiz;
    transform: translate(-0.3rem, -4rem) rotate(1deg);
}

.mode-card-figures .mode-face-back,
.mode-card-quiz .mode-face-back {
    background:
        linear-gradient(180deg, rgba(8, 7, 11, 0.34), rgba(7, 6, 10, 0.62)),
        url("../../media/quiz/cards/tarot_back_1.jpg") center / cover;
}

.mode-card-guesser .mode-face-back,
.mode-card-shuffle .mode-face-back {
    background:
        linear-gradient(180deg, rgba(8, 7, 11, 0.34), rgba(7, 6, 10, 0.62)),
        url("../../media/quiz/cards/tarot_back_2.jpg") center / cover;
}

.mode-card-prep .mode-face-back {
    background:
        linear-gradient(180deg, rgba(8, 7, 11, 0.34), rgba(7, 6, 10, 0.62)),
        url("../../media/quiz/cards/tarot_back_3.jpg") center / cover;
}

.mode-flip-card {
    width: 100%;
    cursor: pointer;
    transition: transform 0.25s ease;
}

.mode-flip-small {
    max-width: 220px;
}

.mode-flip-hero {
    max-width: clamp(255px, 18vw, 320px);
}

.mode-flip-inner {
    position: relative;
    width: 100%;
    transform-style: preserve-3d;
    transition: transform 0.78s ease;
}

.mode-flip-small .mode-flip-inner {
    min-height: auto;
    aspect-ratio: 0.71;
}

.mode-flip-hero .mode-flip-inner {
    min-height: auto;
    aspect-ratio: 0.72;
}

.mode-flip-card.is-flipped .mode-flip-inner {
    transform: rotateY(180deg);
}

.mode-face {
    position: absolute;
    inset: 0;
    backface-visibility: hidden;
    border: none;
    box-shadow: 0 14px 30px rgba(0, 0, 0, 0.22);
}

.mode-face-front {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}

.mode-face-front img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
}

#index_holder_1 .mode-face-front img {
    max-width: none;
    width: 100%;
    height: 100%;
    flex: none;
}

.mode-face-front-quiz img {
    object-fit: contain;
}

.mode-face-back {
    transform: rotateY(180deg);
    display: grid;
    align-content: start;
    gap: 0.55rem;
    padding: 0.8rem 0.8rem 0.9rem;
    color: whitesmoke;
    text-align: center;
    text-shadow: -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;
}

.mode-card-kicker {
    font-family: LHF_Billhead_1890;
    font-size: 0.85rem;
    color: goldenrod;
    letter-spacing: 0.06em;
}

.mode-face-back h3 {
    margin: 0;
    font-family: CherrySwash-Regular;
    font-size: 1.65rem;
    font-weight: normal;
    line-height: 1.08;
}

.mode-face-back h4 {
    margin: 0;
    font-family: CherrySwash-Regular;
    font-size: 1.28rem;
    font-weight: normal;
    line-height: 1.08;
}

.mode-face-back p {
    font-family: CherrySwash-Regular;
    font-size: 0.9rem;
    line-height: 1.3;
}

.mode-flip-hero .mode-face-back h3 {
    font-size: 2rem;
}

.mode-flip-hero .mode-face-back p {
    font-size: 0.95rem;
}

.mode-face-back button {
    width: auto;
    min-width: 7.5rem;
    justify-self: center;
    margin-top: auto;
}

.mode-card-meta {
    margin: 0.15rem 0 0;
    justify-self: center;
    text-align: center;
    font-family: CherrySwash-Regular;
    font-size: 0.82rem;
    line-height: 1.2;
    color: rgba(245, 245, 245, 0.92);
    text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.7), 1px -1px 0 rgba(0, 0, 0, 0.7), -1px 1px 0 rgba(0, 0, 0, 0.7), 1px 1px 0 rgba(0, 0, 0, 0.7);
}

@media (min-width: 1700px) and (min-height: 900px) {
    .mode-stage {
        width: min(880px, 100%);
    }

    .mode-flip-small.mode-card-figures {
        max-width: 220px;
    }

    .mode-flip-small.mode-card-shuffle {
        max-width: 238px;
    }

    .mode-flip-small.mode-card-quiz {
        max-width: 248px;
    }

    .mode-flip-hero {
        max-width: 345px;
    }

    .mode-card-quiz {
        transform: translate(-1.45rem, -4.8rem) rotate(1deg);
    }

    .mode-card-shuffle {
        transform: translate(0.5rem, -0.35rem) rotate(-0.9deg);
    }
}
