/* latin */
@font-face {
    font-family: 'DM Sans';
    font-style: normal;
    font-weight: 400;
    src: url(DM_Sans.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

h1{
    position: sticky;
    top: 0;
    z-index: 1000;
    font-size: /*2rem*/clamp(.1rem, 3vw, 2rem);
    text-align: center;
    margin-block-end: /*1rem*/clamp(.1rem, 2vw, 1rem);
    margin-block-start: /*1rem*/clamp(.1rem, 2vw, 1rem);
    /* color: white; */
}

html{
    overflow-x: clip !important;
}
body{
    overflow-x: clip !important;
}

playing-table {
    max-width: 60rem;
    width: 95vw;
    border-radius: /*3rem*/clamp(.1rem, 6vw, 3rem);
    box-shadow: rgba(0, 0, 0, 0.3) 0px 10px 5px 0px;
}

login-manager{
    max-width: 95vw;
}

canvas{
    position: absolute;
    z-index: -1;
}

.body-iframe-mode {
    padding: 0rem;
    background-color: var(--brown);
}

.iframe-mode {
    width: 100%;
    height: 100%;
    border-radius: .5rem;
    box-shadow: none;
}

.header{
    display: flex; 
    align-items: center; 
    justify-content: space-between; 
    width: 98%; 
    max-width: 55rem;
}

.header img{
    width: clamp(.1rem, 11vw, 7rem);
    height: clamp(.1rem, 11vw, 7rem);
    transition: all 0.2s;
    user-select: none;
}

.header img:active{
    transform: scale(0.9);
}

.header img:hover{
    cursor: pointer;
}

playing-card {
    position: relative;
    transition: all .3s ease;
}

playing-card[selected="true"] {
    transform: translate(0rem, -7rem);
}

playing-card > .sort {
    z-index: 10000;
    position: absolute;
    top: /*16rem*/clamp(.1rem, 26vw, 16rem);
    left: /*1rem*/clamp(.1rem, 2vw, 1rem);
    border-radius: /*1rem*/clamp(.1rem, 2vw, 1rem);
    border: 1px solid;
    transition: .5s ease;
    font-size: /*2.5rem*/clamp(.1rem, 4vw, 2.5rem);
    cursor: pointer;
    padding: /*.5rem*/clamp(.1rem, 1vw, .5rem);
}

playing-card > .sort:hover {
    background-color: grey;
    color: white;
}

card-hand {
    height: /*10rem*/clamp(8rem, 20vw, 12rem);
    width: 100%;
    z-index: 1000;
    max-width: 60rem;
}

.relative{
    position: relative;
}

.beta{
    font-family:'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    position: absolute;
    right: -9rem;
    bottom: 1rem;
    color: red;
    font-weight: bolder;
    font-size: 1rem;
    border: 2px solid red;
    border-radius: .5rem;
    padding: .2rem;
}

h2{
    width: 100%;
}

input {
    font-size: clamp(.1rem, 4vw, 3rem);
    border-radius: .75rem;
    box-shadow: rgba(0, 0, 0, 0.4) 0px 5px 5px 0px;
    margin: 0rem;
}

input:hover {
    cursor: pointer;
}

input:active {
    transform: translateY(4px);
    box-shadow: rgba(0, 0, 0, 0.3) 0px 5px 2px 0px;
}

.display-none{
    display: none;
}

.clip_right{
    margin-left: 1rem;
    overflow-clip-margin: 1rem;
    overflow-x: hidden;
    overflow-x: clip;
}

.flex{
    width: 100%;
    display: flex;
    justify-content: space-around;
}

.caption{
    font-size: 1.25rem;
    width: 100%;
    padding: 0rem;
    text-align: start;
}

.opacity_0{
    filter: opacity(0);
    z-index: -10 !important;
}

.svg{
    position: absolute;
    max-width: 75vw;
    max-height: 75vh;
}

.master{
    display: flex;
    flex-direction: column;
    height: 100vh;
    justify-content: center;
    align-items: center;
    background-color: black;
    filter: opacity(0%);
}

.toast-message {
    position: absolute;
    left: 50%;
    transform: translate(-50%);
    background: rgba(0, 0, 0, 0.889);
    color: #fff;
    padding: 1rem 2rem;
    border-radius: 1rem;
    font-size: clamp(1rem, 6vw, 3rem);
    opacity: 1;
    transition: 0.6s;
    pointer-events: none;
    text-align: center;
    z-index: 1001;
}

.toast-message.fade-out {
  opacity: 0;
  transform: translate(-50%, -1rem);
}

.sort {
    color: black;
    border-color: black;
}

a:hover img {
    transform: scale(1.1);
    cursor: pointer;
}

.table-name-container {
    text-align: center;
    margin: clamp(.1rem, 3vw, 1.5rem) 0;
}

.table-name-card {
    display: inline-block;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border: 1px solid #dee2e6;
    border-radius: clamp(.1rem, 1.6vw, .5rem);
    padding: clamp(.1rem, 2vw, 1rem) clamp(.1rem, 3vw, 1.5rem);
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    user-select: none;
    cursor: pointer;
    transition: all 0.2s;
}

.table-name-card:active{
    transform: scale(0.9);
}

.table-name-label {
    font-size: clamp(.1rem, 2.5vw, 1.125rem);
    font-weight: 500;
    color: #6c757d;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: clamp(.1rem, 1vw, .5rem);
}

.table-name-text {
    font-size: clamp(.1rem, 6vw, 3rem);
    font-weight: 700;
    color: #212529;
    line-height: 1.2;
}

.home_button{
    height: clamp(.1rem, 16vw, 10rem) !important;
    width: clamp(.1rem, 16vw, 10rem) !important;
    user-select: none;
    transition: all 0.2s ease;
    filter: none !important;
}

.home_button:active{
    transform: scale(.95) !important;
    cursor: pointer;
}

.home_button:hover{
    transform: scale(1.05);
    cursor: pointer;
}

.account_nickname{
    color: black !important; 
}

stripe-payment {
    width: 100%;
    height: 100%;
    display: block;
}

#stripe_card_element_light_dom{
    max-width: 55rem;
    width: 95vw;
    border: 1px solid black !important;
    padding: 1rem !important;
    border-radius: .5rem;
    background-color: white !important;
    height: 20rem;
}

