/*GENERAL*/

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600&display=swap');


* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    transition: all 10ms ease;
    
    font-family: 'Poppins', sans-serif;
}


body {
    /*background: beige;*/
    position: relative;
    /*background: beige;*/
    background: white;
    overflow-x: hidden;
}

b {
    font-weight: bold;
}

/*TRANSITION*/


/*DESKTOP NAV*/

nav, .nav-links {
    display: flex;
}

nav {
    justify-content: space-around;
    align-items: center;
    height: 15vh;
}

.nav-links {
    gap: 2rem; 
    list-style: none;
    font-size: 1.5rem;
}

.nav-links li {
    /*background: red;*/
    width: 175px;
}

.nav-links a {
    color: brown;
    text-decoration: none;
    text-decoration-color: white;
    /*background: pink;*/
}

.nav-links a:hover {
    font-weight: bold;
    text-decoration: underline;
    text-underline-offset: 1rem;
    text-decoration-color: brown;
}


.logo a{
    color: brown;
}



/* HAMBURGER MENU */

#hamburger-nav {
    display: none;
}

.hamburger-menu {
    position: relative;
    display: inline-block;
}

.hamburger-icon {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 24px;
    width: 30px;
    cursor: pointer;
    z-index: 10;
}

.hamburger-icon span {
    width: 100%;
    height: 2px;
    background-color: brown;
    transition: all 0.3 ease-in-out;
}

.menu-links {
    position: absolute;
    padding-top : 70px;
    top: -50px;
    right: -50px;
    width: 0vw;
    height: 100vh;
    max-height: 0;
    overflow: hidden;
    transition: all 0.3 ease-in-out;
}

.menu-links a {
    display:block;
    padding: 10px;
    text-align: center;
    font-size: 1.5rem;
    color: brown;
    text-decoration: none;
    transition: all 0.3 ease-in-out;
}

.menu-links li {
    list-style: none;
}

.menu-links.open {
    max-height: 100vh;
    width: 50vw;
    height: 100vh;
    background : rgba(222,184,135, 1);
}

.hamburger-icon.open span:first-child{ 
     transform: rotate(45deg)translate(10px, 5px);
}

.hamburger-icon.open span:nth-child(2){ 
    opacity: 0;
}

.hamburger-icon.open span:last-child{ 
     transform: rotate(-45deg)translate(10px, -5px);
}

.hamburger-icon span:first-child {
    transform: none;
}

.hamburger-icon span:first-child {
    opacity: 1;
}

.hamburger-icon span:first-child {
    transform: none;
}



/* SECTIONS */

/* WELCOME SECTION */

#welcome {
    position: relative;
    display: flex;
    justify-content: center;
    flex-direction: column;
    height: 85vh;
    /*background-image: url("../assets/shogi_background_example.jpg");*/
    background-size: cover;
    width: 100%;
    margin-left: 0px;
    /*border-top: burlywood solid 1px;*/
    /*border-bottom: burlywood solid 1px;*/
    
    /*background: burlywood;*/
}


.bg-trait {
    position: absolute;
    bottom: -20%;
    left: 0;
    width: 100%;
    height: 100%;
    /*background-image: url('../assets/seamlessShogi.png');*/
    /*background-repeat: repeat;*/
    /*background-size: 100%;*/
    /*transform: rotateZ(15deg);*/
    background: linear-gradient(-8deg, transparent, transparent 45%, burlywood 45%, burlywood 50%, transparent 50%); 
    opacity: 0.3;
    /*background: red;*/
    z-index: 0;
}

.bg-couleur {
    position: absolute;
    top:-20vh;
    left: 0;
    width: 100%;
    height: 100%;
    /*background-image: url('../assets/seamlessShogi.png');*/
    /*background-repeat: repeat;*/
    /*background-size: 100%;*/
    /*transform: rotateZ(15deg);*/
    background: linear-gradient(0deg, white, burlywood 100%); 
    /*background: red;*/
    z-index: -1;
}


.bg-motif-pieces-empty {
    position: absolute;
    top:0%;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('../assets/seamlessShogiTrans.png');
    background-repeat: repeat;
    background-size: 90px;
    transform: rotateZ(0deg);
    opacity: 0.3;
    /*background: linear-gradient(-8deg, white, white 45%, beige 45%, beige 50%, white 50%); */
    /*background: red;*/
    z-index: -1;
}
.bg-tour {
    position: absolute;
    top:0%;
    left: 0;
    width: 100%;
    height: 100%;
    /*background-image: url('../assets/seamlessShogi.png');*/
    /*background-repeat: repeat;*/
    /*background-size: 100%;*/
    /*transform: rotateZ(15deg);*/
    background: linear-gradient(-8deg, white, white 45%, beige 45%, beige 50%, white 50%); 
    /*background: red;*/
    z-index: -2;
}
.bg-dragon {
    position: absolute;
    top:0%;
    left: 0;
    width: 100%;
    height: 100%;
    /*background-image: url('../assets/seamlessShogi.png');*/
    /*background-repeat: repeat;*/
    /*background-size: 100%;*/
    /*transform: rotateZ(15deg);*/
    background: linear-gradient(-8deg, white, white 45%, beige 45%, beige 50%, white 50%); 
    /*background: red;*/
    z-index: -2;
}

.bg-ronde-burlywood1 {
    position: absolute;
    top: -70%;
    left: -20%;
    width: 70%;
    height: 220%;
    background-image: url("../assets/ronde-pieces-burlywood1.png");
    background-repeat: no-repeat;
    background-size: 70%;
    opacity: 0.5;
    /*background: linear-gradient(-8deg, white, white 45%, beige 45%, beige 50%, white 50%); */
    /*background: red;*/
    z-index: -1;
}

.welcome-container {
    position: relative;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    gap: 0.5rem;
    
    width:100%;
    height:100%;
    
    /*background: pink;*/
    
} 





.welcome-button {
    width: 250px;
    height: 80px;
    text-align: center;
    box-sizing: border-box;
    transition: 0.2s ease-in-out;
    border: none;
    font-weight: bold;
    color: beige;
    /*background: beige;*/
    background: none;
    border: brown 2px solid;
    font-size: large;
}


.welcome-button a {
    color: brown;
    text-decoration: none;
}

.welcome-button:hover {
    background: brown;
}

.welcome-button:hover a {
    /*color: beige;*/
    color: white;
}




#welcome .right-text-container {
    position: absolute;
    right: 1%;
    top: 20%;
    max-width: 20%;
    text-align: center;
    
    /*background: red;*/
}



#welcome .right-text-container h2 {
    font-size: 2em;
    text-align: right;
}

#welcome .left-text-container {
    position: absolute;
    left: 3%;
    bottom: 10%;
    
    max-width: 40%;
    width: 40%;
    text-align: center;
    
    /*background: red;*/
    
}

#welcome .left-text-container h2 {
    font-size: 2em;
    text-align: left;
    
    display: none;
}
#welcome .left-text-container p {
    font-size: 1em;
    text-align: left;
    padding-left: 10%;
    /*color: grey;*/
    color: burlywood;
    
    display:none;
}



#welcome h1 {
    color: brown;
    font-size: 3em;
    font-weight: bold;
    position: absolute;
    top: 12%;
    width: 100%;
    text-align: center;
    z-index: 2;
    
    /*background: green;*/
}


#welcome h4 {
    color: brown;
    font-size: 1.5em;
    
    position: relative;
    left: -15%;
}
#welcome ul {
    text-align: left;
}



#welcome li {
    list-style-type: none;
}

#welcome p {
    font-size: 1.1em;
    color: grey;
}



/* TIMELINE SECTION */


#gallery-section {
    position: relative;
    height: 100vh;
    
    /*background: green;*/
    
}


#gallery-section .container {
    position: relative;
    
    /*background: yellow;*/
}

#section-title {
    color: brown;
    text-align: center;
    padding-top: 4%;
    /*background: pink;*/
}

#gallery {
    position: relative;
    padding: 5% 10% ;
    display: flex;
    flex-wrap: wrap;

    /*background: red;*/
}

.gallery-cell {
    position: relative;
    line-break: anywhere;
    display: flex;
    flex-direction : column;
    justify-content: center;
    align-items: center;
    
    /*border-bottom: 1.5px brown solid;*/
    /*border-left: 1.5px brown solid;*/
    border: 1.5px brown solid;
    width: 90px;
    height: 100px;
    margin-left: 4px;
    margin-top: 4px;
    
    transition: all 200ms ease;
    
    /*background-color: beige;*/
}

.gallery-cell:hover {
    transform: translateY(-3px);
}


.gallery-cell .date-start {
    color: burlywood;
    
    /*background: yellow;*/
    
}



.gallery-cell.past {
    background: burlywood;
}

.gallery-cell.past .date-start, .gallery-cell.present .date-start {
    color: beige;
}

.gallery-cell:hover .date-start {
    color: brown;
    
    /*background: yellow;*/
    
}

.gallery-cell.present {
    /*background: brown;*/
    /*background: burlywood;*/
    background: brown;
    /*border: brown 3px solid;*/
    color: white;
    font-weight: bold;
}

.gallery-cell.present:hover .date-start {
    color: white;
}




/* APPARIEMENTS */

#appariements-section {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-around;
    padding: 4% 10%;
    gap: 15vh;
    
    /*background: yellow;*/
}

#appariements-section h2 {
    color: brown;
    /*margin-bottom: 4%;*/
}



/* TABLES */

table {
  /*background-color: beige; */
  background-color: none; 
}

td {
    text-align: center;
   border: 1px solid #ddd;
    padding: 4px;
}

th {
    background: brown;
    color: beige;
    width: 150px;
    text-align: center; 
}

/* RANKINGS */

#classements-section {
  position: relative;
  padding: 4% 0;
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  align-items: center;
  /*background: rgb(255, 255, 237);*/
  
  /*background: purple;*/
}

#classements-section .bg-couleur {
    position: absolute;
    top: 0%;
    left: 0;
    width: 100%;
    height: 100%;
    /*background-image: url('../assets/seamlessShogi.png');*/
    /*background-repeat: repeat;*/
    /*background-size: 100%;*/
    /*transform: rotateZ(15deg);*/
    background: linear-gradient(180deg, white, burlywood 100%); 
    /*background: red;*/
    z-index: -1;
    
    
}

#classements-section .bg-motif-pieces-empty {
}


#classements-section h2 {
    color: brown;
    margin-bottom: 4%;
}

.table-container {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    align-items: center;
    /*background-color: rgb(255, 255, 237);*/
    position: relative;
    height: 100%;
    width: 100%;
    gap: 100px;
    padding: 5% 0  ;
    
    /*background:red;*/
}

#classements-section h2 {
    color: brown;
}


/* TABLE CHOICES */




.table-choice-container {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    gap: 20px;
    
    /*background: pink;*/
}

.choice-button {
    width: 200px;
    height: 60px;
    text-align: center;
    box-sizing: border-box;
    transition: 0.2s ease-in-out;
    font-weight: bold;
    color: brown;
    background: white;
    border: brown 2px solid;
    font-size: large;
}

.choice-button:hover {
    background: brown;
    /*color: beige;*/
    color: white;
}


.choice-button.active {
    background: brown;
    color: white;
}

/* Initially hide all table containers */
.table-container {
    display: none;
}

/* Show the selected table container */
.table-container.active {
    display: flex;
}



/* FORMS */

form {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    align-items: center;
    
    
    /*background:  beige;*/
}

.form-input {
    border: brown 1px solid;
    width: 200%;
    height: 3em;
    text-align: center;
    background-color: transparent;
    color: brown;
}

.info-section {
    position: relative;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}


.info-section ul {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    gap: 1em;
    list-style-type:"☖";
    
    
    /*background:red;*/
}

.info-section li {
    position: relative;
    padding-left: 2%;
}


/* MEMBERPAGE */


/* NEXT ROUND FORM SECTION */

#signup-form {
    position: relative;
    padding: 2vh 10vw;
}

.form-section {
    position: relative;
    height: 50vh;
    padding: 2% 10%;
    
    
    /*background: green;*/
}

.form-container {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: center;

}

.form-titles {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    align-items: center;
    
    margin-bottom: 3%;
    
    /*background: red;*/
}

.form-section h1 {
    position: relative;
    margin-bottom: 2%;
    text-align: center;
    
    color: brown;
}




.form-button {
    position: relative;
    margin-top: 3vh;
    width: 100%;
    height: 3em;
    text-align: center;
    box-sizing: border-box;
    transition: 0.2s ease-in-out;
    border: none;
    font-weight: bold;
    color: brown;
    background: transparent;
    background: none;
    border: brown 2px solid;
    font-size: large;
}


.form-button a {
    color: brown;
    text-decoration: none;
}

.form-button:hover {
    background: brown;
    color: white;
}


/* SIGN OUT */

#deconnexion-section {
    position: relative;
    padding: 3%;
    
    display: flex;
    justify-content: center;
    align-items: center;
}

#deconnexion-section button {
    font-weight: bold;
    position: relative;
    height: 50px;
    width: 175px;
    border: none;
    color: brown;
    background: transparent;
    
    border: brown 1px solid;
    
    transition: 200ms all ease;
    
}

#deconnexion-section button:hover {
    /*color: beige;*/
    color: white;
    background: brown;
}



/* SIGN UP */



/* LOGIN */

.login a {
    color: brown;
}


/* MEMBERPAGE */

.form-input.member {
    width: 100%;
}

