.vw-card-wrapper { position: fixed; bottom: 20px; left: 20px; z-index: 10; }
.vw-card-inner { position: relative; }

.vw-toggle { 
    display: flex; align-items: center; justify-content: center; width: 60px; height: 60px; 
    background-color: var(--green); color: var(--white);
    border-radius: 50%; overflow: hidden; 
    box-shadow: 0px 0px 25px rgba(0,0,0,0.35);
    cursor: pointer; 
}
.vw-toggle .vw-icon { font-size: 32px; }



dl.vw-card { 
    position: fixed; bottom: 100px; left: 20px; z-index: 10;
    margin: 0; width: 100%; max-width: 320px; background-color: var(--white); border-radius: 5px; overflow: hidden;  
    box-shadow: 0px 0px 30px rgba(0,0,0,0.45);

   
    transition: transform 0.3s ease, opacity 0.3s ease; /* Add smooth transition for translateY animation */
    transform: translateY(-10%);
    opacity: 0; user-select: none; pointer-events: none; visibility: hidden;

}
.vw-card.showme {
    opacity: 1; user-select: auto; pointer-events: all; visibility: visible;
    transform: translateY(0);
}
dl.vw-card dt { background-color: var(--green); color: var(--white); padding: 15px 20px;  }
dl.vw-card dd { padding: 15px 20px; }

.vw-card-avatar { display: flex; align-items: center; justify-content: center; }
.vw-card-avatar picture {
     display: flex; align-items: center; justify-content: center; 
     width: 60px; height: 60px; border-radius: 50%; overflow: hidden; 
     background-color: var(--white);
     margin-bottom: 8px; padding: 6px;
}
.vw-card-heading { text-align: center; font-weight: 700; margin-bottom: 2px; font-size: 15px;  }
.vw-card-subheading { text-align: center; font-style: italic; opacity: 0.5; font-size: 13px;  }


.vw-btn-start { 
    display: flex; align-items: center; justify-content: center; gap: 0 6px; height: 46px; border-radius: 24px; 
    text-decoration: none !important; background-color: var(--blue); color: var(--white) !important;
    transition:background-color 0.5s;
}
.vw-btn-start:hover { background-color: #5345AE; }
.vw-btn-start .icon { font-size: 22px; }
.vw-btn-start .label { font-weight: 700;  }

.vw-bubble-wrapper { padding-left: 16px; margin-bottom: 15px; }
.vw-bubble { padding: 12px 16px; background-color: var(--grey-10); font-size: 13px; font-weight: 500; opacity: 0.7; position: relative;  }
.vw-bubble::before {
    position: absolute; top: 0; right: 100%;
    content: ''; display: block; width: 0; height: 0;
    border-top: 16px solid var(--grey-10); 
    border-left: 16px solid transparent; 
}
.vw-bubble .vw-welcome { font-style: italic; margin-bottom: 6px; }
.vw-bubble .vw-time { text-align: right; font-style: italic;  }

