* {
box-sizing: border-box;
}
html, body {
font-family: 'Trebuchet MS';
height: 100%;
}
.icons {
display: flex;
justify-content: center;
align-items: center;
flex-wrap: wrap;
}
.icons img {
width: 48px;
height: 48px;
padding: 5px;
cursor: pointer;
}
.header {
display: flex;
justify-content: center;
align-items: center;
margin-top: 20px;
flex-direction: column;
}
.slideshow-container {
padding-top: 20px;
display: flex;
position: relative;
width: fit-content;
align-items: center;
justify-content: center;
}
/* Hide the images by default */
.avatar {
display: none;
}
.avatar img {
width: 100px;
height: 100px;
}
/* Next & previous buttons */
.prev, .next {
cursor: pointer;
position: absolute;
top: 60%;
transform: translateY(-50%);
padding: 5px;
color: white;
font-weight: bold;
font-size: 15px;
transition: 0.6s ease;
user-select: none;
z-index: 10;
color: rgba(0, 0, 0, 0.2);
}
/* Position the "prev button" to the left and "next button" to the right */
.prev {
left: -40px;
}
.next {
right: -40px;
}
/* On hover, add a black background color with a little bit see-through */
.prev:hover, .next:hover {
color: white;
background-color: rgba(0, 0, 0, 0.8);
}
/* Fading animation */
.fade {
animation-name: fade;
animation-duration: 1.5s;
}
@keyframes fade {
from {
opacity: .4
}
to {
opacity: 1
}
}
#username {
font-size: 12px;
font-family: 'Courier New', Courier, monospace;
padding: 4px 8px;
margin: 8px 0;
box-sizing: border-box;
}
.button {
background-color: #04AA6D;
font-family:'Trebuchet MS';
border: none;
color: white;
padding: 4px 8px;
margin: 4px 2px;
text-align: center;
text-decoration: none;
display: inline-block;
font-size: 15px;
}
.footer {
display: flex;
justify-content: center;
align-items: flex-start;
margin: 50px;
gap: 40px;
font-family: Arial, sans-serif;
font-size: 16px;
line-height: 1.6;
color: #333;
}
.footer > div {
width: 50%;
box-sizing: border-box;
}
.footer h2 {
font-size: 24px;
margin-bottom: 10px;
color: #222;
}
.mini-header {
padding: 20px;
display: flex;
align-items: flex-start;
}
.mini-header img {
width: 100px;
height: 100px;
padding: 5px;
cursor: pointer;
}
.mini-header h1 {
font-family: 'Trebuchet MS';
font-size: 20px;
font-weight: bold;
padding: 45px 10px;
}
.game-progress img {
width: 36px;
height: 36px;
padding: 5px;
}
.game-progress {
font-family: 'Courier New', Courier, monospace;
font-size: 12px;
padding: 4px 8px;
display: flex;
border: 1px solid #ccc;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
.center {
flex: 2;
text-align: center;
}
.scoreboard {
width: 20%;
background-color: #fff;
padding: 20px;
border: 1px solid #ccc;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
.player {
display: flex;
align-items: center;
padding: 10px;
margin-bottom: 10px;
border-bottom: 1px solid #ccc;
}
.player:last-child {
border-bottom: none;
}
.player img {
width: 50px;
height: 50px;
border-radius: 50%;
margin-right: 20px;
}
.player .details {
flex: 1;
}
.player .details .username {
font-size: 18px;
font-weight: bold;
}
.player .details .score {
font-size: 16px;
}
.player .number {
font-size: 20px;
font-weight: bold;
margin-right: 20px;
}
.middle-section {
display: flex;
align-items: center;
height: 50%;
}
.scoreboard {
align-items: left;
align-self: left;
width: 25%;
float: left;
flex: 1;
padding: 20px;
margin-right: 20px;
height: 100%;
}
.form-section {
display: flex;
flex-direction: column;
height: 100%;
width: 50%;
margin: 0 auto; /* Center the form-section horizontally */
padding: 20px;
border: 1px solid #ccc;
}
form {
display: flex;
flex-direction: column;
height: 100%; /* Make the form take up the full height of the form-section */
}
.form-fields {
flex-grow: 1; /* Allow the form-fields to grow and take up available space */
}
.form-field {
display: flex;
align-items: center;
margin-bottom: 20px;
}
.icon {
margin-right: 10px;
width: 20px;
height: 20px;
}
label {
margin-right: auto;
}
select {
margin-left: auto;
min-width: 150px;
max-width: 250px;
padding: 10px;
border: #ccc 1px solid;
border-radius: 10px;
}
.bottom {
margin-top: auto; /* Push the button to the bottom */
display: flex;
justify-content: center; /* Center the button horizontally */
}
button {
padding: 10px 20px;
background-color: #4CAF50;
color: white;
border: none;
border-radius: 5px;
cursor: pointer;
font-size: 16px;
flex-grow: 2;
}
button:hover {
background-color: #45a049;
}
button:disabled {
background-color: #ccc; /* Grey out the button */
cursor: not-allowed; /* Show the not-allowed cursor */
color: #666; /* Lighten the text color */
}
.chat-section {
display: flex;
flex-direction: column;
height: 100%;
width: 25%;
margin: 0 auto; /* Center the chat-section horizontally */
padding: 20px;
border: 1px solid #ccc;
}
h3 {
margin-bottom: 10px;
}
#chat {
flex-grow: 1; /* Allow the chat to grow and take up available space */
overflow-y: auto; /* Add scroll if content overflows */
padding: 10px;
border: 1px solid #ddd;
margin-bottom: 10px;
height: 250%;
}
.bottom {
display: flex;
justify-content: space-between; /* Space between input and button */
align-items: left; /* Align items vertically center */
}
#chatInput {
flex-grow: 1; /* Allow the input to grow */
width: 100%;
padding: 10px;
margin-right: 10px;
border: 1px solid #ccc;
border-radius: 5px;
height: 40px; /* Limit the height to a single line */
min-height: 40px; /* Ensure it doesn't shrink below this height */
max-height: 200px; /* Ensure it doesn't grow above this height */
}
.center-wrapper {
display: flex;
justify-content: center;
align-items: center;
margin-top: 20px;
position: relative;
z-index: 1;
}
.invite-section {
text-align: center;
background-color: white;
padding: 20px;
border-radius: 8px;
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
margin-bottom: 20px;
width: 100%;
max-width: 600px;
}
.invite-box {
display: flex;
justify-content: center;
align-items: center;
gap: 10px;
margin-top: 10px;
}
.invite-box input {
padding: 10px;
font-size: 16px;
border: 1px solid #ccc;
border-radius: 5px;
width: 100%;
max-width: 400px;
}
.invite-box button {
padding: 10px 20px;
background-color: #4CAF50;
color: white;
border: none;
border-radius: 5px;
cursor: pointer;
font-size: 16px;
white-space: nowrap;
}
.invite-box button:hover {
background-color: #45a049;
}
/* Update the roles grid to prevent overlap */
.roles-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 20px;
margin-bottom: 40px;
position: relative;
z-index: 2;
}
.role-card {
display: flex;
flex-direction: column;
align-items: center;
padding: 15px;
background-color: white;
border-radius: 8px;
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
.role-card img {
width: 80px;
height: 80px;
object-fit: contain;
margin-bottom: 10px;
}
.role-card p {
margin: 0;
text-align: center;
font-size: 14px;
color: #333;
}
/* Update scoreboard styling */
.scoreboard {
padding: 20px;
background-color: white;
border-radius: 8px;
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
margin-bottom: 20px;
}
.player {
display: flex;
align-items: center;
padding: 10px;
border-bottom: 1px solid #eee;
}
.player:last-child {
border-bottom: none;
}
.player .number {
width: 30px;
height: 30px;
background-color: #4CAF50;
color: white;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
margin-right: 10px;
}
.player img {
width: 40px;
height: 40px;
border-radius: 50%;
margin-right: 10px;
}
.player .details {
flex-grow: 1;
}
.player .username {
font-weight: bold;
color: #333;
}
.player .score {
color: #666;
font-size: 14px;
}
/* Container for the form section */
.form-section {
display: flex;
flex-direction: column;
align-items: center;
}
/* Roles grid container */
.roles-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
grid-template-rows: repeat(2, 1fr);
gap: 20px;
width: 200px; /* Adjust as needed */
height: 200px; /* Adjust as needed */
margin-bottom: 20px; /* Add space below the grid */
}
/* Role cards inside the grid */
.role-card {
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
}
/* Styling for the role images */
.role-card img {
width: 80px; /* Adjust as needed */
height: 80px; /* Adjust as needed */
object-fit: contain;
}
/* Container for the Start Game button */
#startGameContainer {
margin-top: 20px; /* Adjust spacing as needed */
}
/* Mantri button styling */
#mantriButton {
margin-top: 20px; /* Ensures there's space between the grid and button */
}
/* Round Score Overlay */
.round-score-overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, 0.8);
display: flex;
justify-content: center;
align-items: center;
z-index: 1000;
animation: fadeIn 0.3s ease-in;
}
.round-score-overlay.fade-out {
animation: fadeOut 0.5s ease-out;
}
.round-score-content {
background-color: white;
padding: 2rem;
border-radius: 8px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
max-width: 600px;
width: 90%;
}
.round-score-content h2 {
text-align: center;
color: #333;
margin-bottom: 1.5rem;
font-size: 24px;
}
.round-scores-list {
display: flex;
flex-direction: column;
gap: 1rem;
}
.round-score-item {
display: flex;
align-items: center;
padding: 1rem;
background-color: #f8f9fa;
border-radius: 8px;
justify-content: space-between;
}
.player-info {
display: flex;
align-items: center;
gap: 1rem;
}
.player-info img {
width: 40px;
height: 40px;
border-radius: 50%;
}
.round-score {
font-size: 20px;
font-weight: bold;
color: #28a745;
margin: 0 1rem;
}
.total-score {
color: #666;
font-size: 16px;
}
@keyframes fadeIn {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
@keyframes fadeOut {
from {
opacity: 1;
}
to {
opacity: 0;
}
}
.round-result-info {
text-align: center;
margin-bottom: 2rem;
padding: 1rem;
background-color: #f8f9fa;
border-radius: 8px;
}
.round-result-info p {
margin: 0.5rem 0;
font-size: 18px;
}
.guess-correct {
color: #28a745;
font-weight: bold;
}
.guess-wrong {
color: #dc3545;
font-weight: bold;
}
.chor-reveal {
color: #6c757d;
font-style: italic;
}