/*Celestia Redux Alternate*/
@font-face {
  font-family: 'CelestiaRedux';
  src: url('./Celestia.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

html{
	overflow-x: hidden;
}

body{
	margin: 0 0px;
	background-color: #2b3741;
	overflow-x: hidden;
  	/*font-family: 'CelestiaRedux'*/
}


/** Latex button */
    .latex-button {
      font-family: 'CelestiaRedux';
      position: relative;
      padding: 5px 20px 15px 20px;
      font-size: 1.2em;
      color: white;
      background: linear-gradient(145deg, #000, #000);
      border: none;
      border-radius: 20px;
      box-shadow:
        inset -4px -4px 8px rgba(255, 255, 255, 0.5),
        inset 4px 4px 8px rgba(0, 0, 0, 0.4),
        0 4px 20px rgba(0, 0, 0, 0.6);
      cursor: pointer;
      overflow: hidden;
      transition: transform 0.2s;
      border : solid 2px #000;
      user-select: none;
      height: 50px;
    }
    @media (max-width: 768px) {
      .latex-button {
        padding: 0px 10px 7px 10px;
        border: solid 1px #000;
        height: 40px;
      }
    }

    .latex-button::before,
    .latex-button::after {
      content: '';
      position: absolute;
      top: -50%;
      width: 60%;
      height: 200%;
      background: rgba(255, 255, 255, 0.5);
      transform: rotate(20deg) translateX(-250%);
      pointer-events: none;
      filter: blur(1.5rem);
    }

    .latex-button::after {
      top: -60%;
      left: 20%;
      width: 20%;
      background: rgba(255, 255, 255, 0.75);
      transform: rotate(20deg) translateX(-250%);
    }

    .latex-button:hover::before {animation: sweep1 1s ease-in-out forwards;}
    .latex-button:hover::after {animation: sweep2 1s 0.2s ease-in-out forwards;}
    @keyframes sweep1 {to {transform: rotate(20deg) translateX(250%);}}
    @keyframes sweep2 {to {transform: rotate(20deg) translateX(500%);}}
    .latex-button:active {transform: scale(0.8);}

    .latex-button:hover {transform: scale(1.05);}

/* tmp */
.disable-latex-button{
	background: gray;
}
.disable-latex-button:hover{
	transform: none;
	animation: none;
}
.disable-latex-button:hover::before{animation: none;}
.disable-latex-button:hover::after{animation: none;}
/* tmp */

/* Latex button **/


.logo-container {
  display: flex;
  align-items: center;
  gap: 15px;
  border-radius: 25px;
  padding: 5px;
  background: rgba(0,0,0,0.25);
  margin: 5px;
}

 .logo-container:hover {
  cursor:pointer;
  background: rgba(0,0,0,0.5);
  transform: scale(0.9);
 }

.logo-container:hover{transition: transform 0.2s ease-in-out;}
.logo-container:not(:hover){transition: transform 0.5s ease-in-out;}


.logo-container img {
  height: 60px; /* ajuste la taille selon ton logo */
}

.site-name {
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 10px;
}


/* Subscription  */
.container {
  max-width: 75%/*1100px*/;
  margin: 0 auto;
}

@media (max-width: 768px) {
	.container {
		max-width: 100%;
	}
}

.subscriptions {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
  gap: 10px;
}

@media (max-width: 768px) {
	.subscriptions {
	  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	  width: 100%;
	}
}

.card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: white;
  border-radius: 12px;
  padding: 10px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
  text-align: center;
  /*height: 100%;*/
}

.card .bottom {
  margin-top: auto;
}

.card .bottom p {
  font-weight: bold;
  margin: 10px 0 5px;
}

.card h2 {
  margin-top: 0;
  font-size: 1.25em;
}

.card p {
  color: #555;
}

.card ul {
  text-align: left;
  padding-left: 20px;
  margin: 10px 0;
}

.card ul li {
  margin: 5px 0;
}

.card ul li.bold {
  font-weight: bold;
}

.card button {
  background-color: #007bff;
  color: white;
  border: none;
  border-radius: 8px;
  padding: 10px 20px;
  margin-bottom: 0;
  cursor: pointer;
  transition: background 0.2s;
}

.cardDisable button {
  background-color: #888888;
  color: white;
  border: none;
  border-radius: 8px;
  padding: 10px 20px;
  margin-bottom: 0;
  cursor: pointer;
  transition: background 0.2s;
}

.card button:hover {
  background-color: #0056b3;
}

	/*discord name*/
		label.username {
			display: block;
			margin-bottom: 0.5rem;
			font-weight: bold;
		}

		input.usernameInput[type="text"] {
			padding: 0.5rem;
			font-size: 1rem;
			border: 2px solid #ccc;
			border-radius: 5px;
			width: 300px;
			transition: border-color 0.3s;
		}

		input.valid {
			border-color: green;
			background-color: #e8fce8;
		}

		input.invalid {
			border-color: red;
			background-color: #ffecec;
		}

		.error-msg {
			color: red;
			font-size: 0.9rem;
			display: none;
			margin-top: 0.3rem;
		}

		.error-msg.visible {
			display: block;
		}
	/*discord name*/
/* Subscription  */
/* Window */
.window{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: opacity 0.3s ease;	
	display: none;			
}
.windowContent{
	background-color: #fff;
	padding: 35px;
	border-radius: 16px;
	width: 480px;
	max-width: 90%;
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
	position: relative;
	opacity: 0;
	transform: translateY(-20px);
	animation: slideIn 0.3s ease forwards;
}
.backBlur{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	backdrop-filter: blur(5px);
	background-color: rgba(0, 0, 0, 0.3);
}
.close {
	position: absolute;
	right: 0px;
	top: 0px;
	height: 50px;
	width: 50px;
	font-size: 50px;
	cursor: pointer;
	color : gray;
}


.checkbox {
  appearance: none;
  width: 24px;
  height: 24px;
  border: 2px solid #007bff;
  border-radius: 6px;
  position: relative;
  cursor: pointer;
  transition: background 0.2s ease;
  vertical-align: middle;
}

.checkbox:checked {
  background-color: #007bff;
}

.checkbox:checked::after {
  content: '✔';
  color: white;
  font-size: 16px;
  position: absolute;
  left: 4px;
  top: -2px;
}

@keyframes slideIn {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.price-adjust {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 15px 0;
}

.price-adjust button {
  background-color: #eee;
  border: none;
  padding: 10px 14px;
  font-size: 16px;
  border-radius: 8px;
  cursor: pointer;
  transition: background 0.2s;
}

.price-adjust button:hover {
  background-color: #ddd;
}

.price-adjust input {
  width: 80px;
  text-align: center;
  padding: 8px;
  font-size: 16px;
  border: 1px solid #ccc;
  border-radius: 8px;
}

.trimestrial {
  display: block;
  margin-top: 10px;
  user-select: none;
}

/* Submit button */
button.validate {
  display: block;
  width: 100%;
  padding: 12px;
  margin-top: 25px;
  font-size: 24px;
  border: none;
  border-radius: 10px;
  background-color: #28a745;
  color: white;
  font-weight: bold;
  cursor: pointer;
  transition: background 0.2s;
}

button.validateDisable {
  background-color: gray;
}

.redStar{
  color: red;
}

.modal_Subscription-content button.validate:hover {
  background-color: #218838;
}

/* Window **/

    footer {
		background-color: #1D2933;
		color: #fff;
		text-align: center;
		padding: 15px 10px;
		font-size: 14px;
		width: 100%;
		margin-top: 10px;
    }

    footer a {
      color: #aaa;
      text-decoration: none;
      margin: 0 10px;
    }

    footer a:hover {
      color: #fff;
    }


    .terms{
    	color: blue;
    	text-decoration: underline;
    }
    .terms:hover{
    	color: darkblue;
    	cursor: pointer;
    }

.fullscreen-image {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 999;
  backdrop-filter: blur(5px);
}



#banner {
  display: flex;
  justify-content: center;
}
#banner img {
  max-height: 300px;
  margin-bottom: 5px;
  height: 300px;
}
#menu{
  text-align: center;
}
#windowNetwork h1 {
  text-align:center;
  font-family: 'CelestiaRedux';
  text-decoration: underline;
  text-underline-position: under;
}