Added a horizontal end for the container to not stretch endlessly to the sides. Covered sides with lobby background and adjusted the blur behind the cards to match the playing area.
231 lines
4.9 KiB
Plaintext
231 lines
4.9 KiB
Plaintext
@import "light-mode.less";
|
|
@import "dark-mode.less";
|
|
@import "login.less";
|
|
|
|
/* Provide default (light) variables so the site works even if light-mode.less fails */
|
|
:root {
|
|
--background-image: url('/assets/images/img.png');
|
|
--color: #212529; /* Bootstrap body text default */
|
|
|
|
/* Bootstrap variable overrides for light mode */
|
|
--bs-body-color: var(--color) !important;
|
|
--bs-link-color: #0d6efd !important;
|
|
--bs-link-hover-color: #0a58ca !important;
|
|
--bs-border-color: rgba(0, 0, 0, 0.125) !important;
|
|
--bs-heading-color: var(--color) !important;
|
|
}
|
|
@background-color: var(--background-color);
|
|
@highlightcolor: var(--highlightscolor);
|
|
@background-image: var(--background-image);
|
|
@color: var(--color);
|
|
@keyframes slideIn {
|
|
0% { transform: translateX(-100vw); }
|
|
100% { transform: translateX(0); }
|
|
}
|
|
.game-field-background {
|
|
background-image: @background-image;
|
|
max-width: 1400px;
|
|
margin: 0 auto;
|
|
min-height: 100vh;
|
|
}
|
|
.lobby-background {
|
|
background-color: @background-color;
|
|
width: 100%;
|
|
height: 100vh;
|
|
}
|
|
|
|
.navbar-header{
|
|
text-align:center;
|
|
}
|
|
|
|
.navbar-toggle {
|
|
float: none;
|
|
margin-right:0;
|
|
}
|
|
.handcard :hover {
|
|
box-shadow: 3px 3px 3px @highlightcolor;
|
|
}
|
|
|
|
.bottom-div {
|
|
position: fixed;
|
|
bottom: 0;
|
|
left: 50%;
|
|
transform: translateX(-50%);
|
|
max-width: 1400px;
|
|
width: 100%;
|
|
margin: 0;
|
|
text-align: center;
|
|
padding: 10px;
|
|
}
|
|
|
|
/* Ensure body text color follows theme variable and works with Bootstrap */
|
|
body {
|
|
color: @color;
|
|
}
|
|
|
|
.footer {
|
|
width: 100%;
|
|
text-align: center;
|
|
font-size: 12px;
|
|
color: @color;
|
|
padding: 0.5rem 0;
|
|
flex-grow: 1; /* fill remaining vertical space as visual footer background */
|
|
}
|
|
|
|
.game-field {
|
|
position: fixed;
|
|
inset: 0;
|
|
overflow: auto;
|
|
}
|
|
|
|
#sessions {
|
|
display: flex;
|
|
flex-direction: column;
|
|
justify-content: flex-start;
|
|
align-items: center;
|
|
text-align: center;
|
|
h1 {
|
|
animation: slideIn 0.5s ease-out forwards;
|
|
animation-fill-mode: backwards;
|
|
}
|
|
}
|
|
#textanimation {
|
|
animation: slideIn 0.5s ease-out forwards;
|
|
animation-fill-mode: backwards;
|
|
animation-delay: 1s;
|
|
}
|
|
|
|
#sessions a, #sessions h1, #sessions p {
|
|
color: @color;
|
|
font-size: 40px;
|
|
font-family: Arial, serif;
|
|
}
|
|
#ingame {
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
justify-content: flex-end;
|
|
height: 100%;
|
|
}
|
|
#ingame a, #ingame h1, #ingame p {
|
|
color: @color;
|
|
font-size: 40px;
|
|
font-family: Arial, serif;
|
|
}
|
|
#playercards {
|
|
display: flex;
|
|
flex-direction: row;
|
|
justify-content: center;
|
|
height: 20%;
|
|
img {
|
|
animation: slideIn 0.5s ease-out forwards;
|
|
animation-fill-mode: backwards;
|
|
&:nth-child(1) { animation-delay: 0.5s; }
|
|
&:nth-child(2) { animation-delay: 1s; }
|
|
&:nth-child(3) { animation-delay: 1.5s; }
|
|
&:nth-child(4) { animation-delay: 2s; }
|
|
&:nth-child(5) { animation-delay: 2.5s; }
|
|
&:nth-child(6) { animation-delay: 3s; }
|
|
&:nth-child(7) { animation-delay: 3.5s; }
|
|
}
|
|
}
|
|
#card-slide {
|
|
div {
|
|
animation: slideIn 0.5s ease-out forwards;
|
|
animation-fill-mode: backwards;
|
|
&:nth-child(1) { animation-delay: 0.5s; }
|
|
&:nth-child(2) { animation-delay: 1s; }
|
|
&:nth-child(3) { animation-delay: 1.5s; }
|
|
&:nth-child(4) { animation-delay: 2s; }
|
|
&:nth-child(5) { animation-delay: 2.5s; }
|
|
&:nth-child(6) { animation-delay: 3s; }
|
|
&:nth-child(7) { animation-delay: 3.5s; }
|
|
}
|
|
|
|
|
|
}
|
|
|
|
#cardsplayed {
|
|
display: flex;
|
|
flex-direction: row;
|
|
height: 10%;
|
|
min-height: 10%
|
|
}
|
|
#playedcardplayer {
|
|
display: flex;
|
|
flex-direction: column;
|
|
justify-content: flex-end;
|
|
}
|
|
#playedcardplayer p {
|
|
font-size: 12px;
|
|
height: 4%;
|
|
}
|
|
#playedcardplayer img {
|
|
height: 90%;
|
|
}
|
|
|
|
#firstCard {
|
|
display: flex;
|
|
flex-direction: row;
|
|
height: 20%;
|
|
width: 100%;
|
|
justify-content: space-between;
|
|
}
|
|
#firstCardObject {
|
|
display: flex;
|
|
flex-direction: column;
|
|
margin-right: 4%;
|
|
}
|
|
#firstCardObject img{
|
|
height: 90%;
|
|
}
|
|
#firstCardObject p{
|
|
height: 10%;
|
|
font-size: 20px;
|
|
|
|
}
|
|
#trumpsuit {
|
|
display: flex;
|
|
flex-direction: row;
|
|
margin-left: 4%;
|
|
}
|
|
#nextPlayers {
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
height: 0;
|
|
p {
|
|
margin-top: 0;
|
|
margin-bottom: 0;
|
|
}
|
|
}
|
|
#invisible {
|
|
visibility: hidden;
|
|
}
|
|
#selecttrumpsuit {
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
height: 100%;
|
|
}
|
|
#rules {
|
|
color: @color;
|
|
font-size: 1.5em;
|
|
font-family: Arial, serif;
|
|
}
|
|
.score-table {
|
|
background-color: rgba(255, 255, 255, 0.1);
|
|
border-radius: 8px;
|
|
padding: 10px;
|
|
margin-bottom: 20px;
|
|
backdrop-filter: blur(8px);
|
|
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
|
|
}
|
|
.score-header {
|
|
font-weight: bold;
|
|
color: #000000;
|
|
border-bottom: 1px solid rgba(255, 255, 255, 0.3);
|
|
}
|
|
.score-row {
|
|
color: #000000;
|
|
} |