.modal-overlay{

    position:fixed;

    inset:0;

    display:flex;

    align-items:center;

    justify-content:center;

    background:rgba(0,0,0,.78);

    backdrop-filter:blur(5px);

    z-index:9999;

    transition:.25s;

}

.modal-overlay.hidden{

    display:none;

}

.game-modal{

    width:640px;

    max-width:92vw;

    background:linear-gradient(180deg,#28241d,#1d1a16);

    border:1px solid rgba(190,160,95,.45);

    border-radius:12px;

    overflow:hidden;

    box-shadow:
        0 0 50px rgba(0,0,0,.6),
        inset 0 0 0 1px rgba(255,255,255,.03);

    animation:modalOpen .25s ease;

}

@keyframes modalOpen{

    from{

        opacity:0;

        transform:translateY(-15px) scale(.96);

    }

    to{

        opacity:1;

        transform:none;

    }

}

.game-modal-header{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:18px 24px;

    border-bottom:1px solid rgba(190,160,95,.18);

}

.game-modal-header h2{

    margin:0;

    color:var(--gold);

    font-family:"Cinzel",serif;

    font-size:1.5rem;

}

.modal-close{

    background:none;

    border:none;

    color:#d9c9a5;

    cursor:pointer;

    font-size:1.4rem;

}

.modal-close:hover{

    color:white;

}

.game-modal-body{

    padding:30px;

    color:#e6dcc8;

    min-height:140px;

}

.game-modal-footer{

    display:flex;

    justify-content:flex-end;

    gap:12px;

    padding:20px 24px;

    border-top:1px solid rgba(190,160,95,.18);

}

.btn:disabled{

    opacity:.45;

    cursor:not-allowed;

}

.hidden{

    display:none !important;

}