@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300&display=swap');
@import url('https://fonts.cdnfonts.com/css/gunship');

body {
  padding: 2%;
  background: linear-gradient(120deg, #323031 40%, rgba(241,0,0,1) 100%);
  color: white;
  font-size: 20px;
  font-family: 'Roboto', sans-serif !important;
  overflow: hidden;
}

html {
  min-height: 100%;
  margin: 0;
}

/*Button*/

.btn {

  background-color: transparent;
  outline: none;
  border-radius: 10px;
  border: 1px solid currentColor;
  color: currentColor;
  padding: 10px;
  transition: 0.2s;
  cursor: pointer;
}

.btn span {
  transition: 0.2s;
}

.btn:hover {
  box-shadow: 0px 0px 10px currentColor;
  background-color: currentColor;
 
}

.btn:hover span {
  color: black
 
}

.btn:active {
  box-shadow: 0px 0px 10px currentColor;
  background-color: transparent;
  
}

.btn:active span {
  color: white
 
}

.btn span a {
  text-decoration: none;
}

.btn-cover {
  color: white;
  transition: 0.1s;
  cursor: pointer;
}

.btn-cover:hover {
  color: rgba(255, 255, 255, 0.675);
  
}

.btn-cover:active {

  color: rgba(255, 255, 255, 0.575);
}
/* Miniaturiez Button */

.min {

  width: 40px !important;
  height: 40px !important;
  border-radius: 100% !important;
  font-size: 1vw !important;
  transition: 0.2s;
  padding: 0 !important;
}
  
.min span {

  font-size: 20px !important;

}



/*Colors*/

.red {

  color: #f01000!important; 
}

.lightred {
  color: #ff5d51 !important;
}

.blue {

  color: rgb(66, 242, 255) !important;
}

.yellow {

  color: rgb(255, 255, 27) !important;
}

.green {

  color: rgb(64, 248, 64) !important;
}

/*Balise Properties*/

code {

  background-color: #3D3B3C;
  padding: 0.3vw;
  border-radius: 10px;
}

p {
  margin-block-start: 0.5em !important;
  margin-block-end: 0.5em !important;
}

a {
  color: currentColor;
}

/*Lists*/

.center {

  text-align: center !important;
  

}

.col {

  display: flex;
  flex-direction: column;
  gap: 2vw;

}

@media (max-width: 500px) {

  .row {

  
    display: flex;
    flex-direction: column;
    gap: 2vw;
  
  }
  
} 

@media (min-width: 500px) {

.row {

  
  display: flex;
  flex-direction: row;
  gap: 2vw;
  
}

}

/* Fields */

.field {

  width: fit-content;
  border-radius: 5px;
  padding-bottom: 0.3vw;
  padding-top: 0.3vw;
  padding-left: 0.5vw;
  border: 1px solid white;
  background-color: transparent;
  transition: 0.2s;
  color: white;
}

.field:focus {
  color: black;
  outline: none;
  background-color: white;
  box-shadow: 0px 0px 8px #C1BDB3 ;
}




/* Logo */

.logo {

  user-select: none;
}

@media (max-width: 640px) {

  .logo {

    font-family: 'Gunship', sans-serif;
    text-shadow: 0px 0px 10px #ffffff;
    font-size: 50px;
    display: flex;
    justify-content: center;
    text-align: center;
    flex-direction: column;
    align-items: center;
  }
  
  .logo-img {
  
    width: 70px;
    margin-right: 10px;
  }
  
  
} 

@media (min-width: 640px) {

  .logo {

    font-family: 'Gunship', sans-serif;
    text-shadow: 0px 0px 10px #ffffff;
    font-size: 50px;
    display: flex;

    justify-content: center;
    text-align: center;
    align-items: center;
  }
  
  .logo-img {
  
    width: 70px;
    margin-right: 10px;
  }
  

}



/* Form Box */


.form-box {

  width: 500px;
  height: 400px;
  border-radius: 10px;
  display: flex;
  padding: 2%;
  flex-direction: column;
  justify-content: space-between;
  background-color: #605e5863;
  backdrop-filter: blur(10px);
}

.panel-box {

  width: 900px;
  height: 500px;
  border-radius: 10px;
  display: flex;
  padding: 2%;
  flex-direction: column;
  justify-content: space-between;
  background-color: #605e5863;
  gap: 50px;
  backdrop-filter: blur(10px);
}

.taskbar-box {

  width: 100%;
  position: absolute;
  background-color: #09090963;
  backdrop-filter: blur(10px);
  bottom: 0;
  align-items: center;

  
}

.taskbar-content {

  display: flex;
  justify-content: space-between;
  padding: 20px;
}

.taskbar-image {

  width: 50px;
  height: 50px;
  border-radius: 100%;
}

.taskbar-logo {
  width: 50px;
  
  transition: 0.3s;
}

.taskbar-logo:hover {
  transform: scale(0.9);
}

.taskbar-user {

  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: center;
}

.taskbar-userinfo {
  text-align: end;
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.taskbar-actions {

  display: flex;
  flex-direction: row;
  gap: 20px;
  align-items: center;

}

.taskbar-username {

  font-size: 14px;
  color: rgba(255, 255, 255, 0.68);
  margin-block: 0 !important;
}

.views-items {

  width: 100%;
  display: flex;
  flex-direction: row;
  gap: 15px;
}

.view-item {


  display: flex;
  align-items: center;
  flex-direction: row;
  gap: 10px;
  font-size: 14px;
  background-color: #3230319d;
  padding: 5px;
  padding-left: 10px;
  padding-right: 10px;
  border-radius: 15px;
  transition: 0.3s;
  user-select: none;

}

.view-item:hover {

  background-color: #4e4b4d9d;
  cursor: pointer;
  transform: scale(1.05);

}

.view-item:active {

  background-color: #4e4b4d9d;
  cursor: pointer;
  transform: scale(0.975);

}

.view-item p {

  text-align: start;
}
.menu-signout {

  color: #ff5d51;
  cursor: pointer;
  font-size: 14px;
  display: grid;
  grid-template-columns: 0.2fr 0.8fr;
  gap: 10px;
}

.dm-element:hover .menu-signout {
  color: black;
}


.taskbar-dispname {

  margin-block: 0 !important;
}

.m-align {

    margin-right: auto !important;
    margin-left: auto !important;
}

.t-center {

  text-align: center;
}


/* LOGIN Specs */

.LOG_btn {

  margin-top: 2%;
  margin-bottom: 2%;
}

.LOG_body {

    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 10px;
    align-items: center;
    height: 100vh;
    padding: 0 !important;
    margin: 0 !important;
}

/*INDEX Specs*/

@media (max-width: 640px) {

  .views-box {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    gap: 10px;

  
  }
  
  
} 

@media (min-width: 640px) {

  .views-box {
    width: 100%;
    height: 100%;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(2, 1fr);
    grid-column-gap: 10px;
    grid-row-gap: 10px;
  
  }
  

}


.view {
  display: flex;
  flex-direction: column;
  user-select: none;
  -webkit-user-select: none;
  transition: 0.1s;

}

.view:hover {

  cursor: pointer;
  color: #ff5d51;
  text-shadow: 0px 3px 2px #070607;
}
.view:active {

  cursor: pointer;
  color: #ff5d5194;
}

.view-image {

  font-size: 72px;
}



.blur {

  filter: blur(10px);
}

/*ViewWindow*/

.view-window {

  position: absolute;
  display: flex;
  flex-direction: column;
  z-index: 1;
  background-color: #605e58c1;
  backdrop-filter: blur(10px);
  border-radius: 10px;
  -webkit-user-drag: auto;
  
}

.view-window-header {

  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px;
  background-color: rgba(33, 32, 33, 0.753);
  border-top-right-radius: 10px;
  border-top-left-radius: 10px;
  user-select: none;
}

.view-window-content {

  height: 100%;
  display: flex;
  flex-direction: column;
  width: 100%;
  
}

.view-popup {
  position: absolute;
  background-color: #3D3B3C;
  backdrop-filter: blur(10px);
  display: flex;
  flex-direction: column;
  gap: 20px;
  align-items: center;
  justify-content: center;
  padding: 2%;
  border-radius: 10px;
}

.view-popup-bar {

    display: flex;
    justify-content: space-between;
    flex-direction: row;
    align-items: center;
    gap: 20px;
    width: 100%;
}

.view-close {
  color: white;
  transition: 0.1s;
  cursor: pointer;
  margin-right: 10px;
}

.view-close:hover {
  color: #f01000;
  
}

.view-close:active {

  color: #ff5d51;
}

.view-closediv {

    display: flex;
    flex-direction: row;
    gap: 20px;
}

.minimized {

  height: 7% !important;
}

/* Files Explorer */

.fx-window {

  display: flex;
  flex-direction: column;

}

.fx-root-input {
  background-color: #323031;
  border: solid 1px #323031;
  border-radius: 10px;
  padding: 1%;
  color: white;
  outline:0px;
  width: 100%;
  
}

.fx-explorer {
  display: flex;
  flex-direction: column;
  overflow-y: auto ;
  height: 450px;

}

.fx-element {

  display: grid;
  grid-template-columns: 3fr 1fr 2fr;
  grid-column-gap: 10px;
  align-items: center;
  padding: 5px;
  padding-left: 30px;
  padding-right: 30px;
  font-size: 14px;
  transition: 0.1s;
}

.fx-element div {
  display: flex;
  justify-content: start;
  gap: 10px;
  align-items: center;
}

.fx-element:hover {

  background-color: rgba(44, 40, 42, 0.614);

}

.fx-actions {
  justify-content: end !important;
  width: 100%;
}

.fx-bar {

  margin: 1%;
  display: flex;
  gap: 10px;
  align-items: center;

}

.fx-bar-actions {

    width: 33%;
    display: flex;
    flex-direction: row;
    justify-content: end;
    gap: 10px; 

}

.fx-editor-content {
  border: none;
  border-top: 1px solid rgb(70, 67, 67);
  background-color: transparent;
  color: white;
  padding: 15px;
  height: 100%;

}

.fx-editor-content:focus {

  outline: none;
} 


/* ===== Scrollbar CSS ===== */
  /* Firefox */
  * {
    scrollbar-width: auto;
    scrollbar-color: #ff5d51 #ffffff;
  }

  /* Chrome, Edge, and Safari */
  *::-webkit-scrollbar {
    width: 13px;
  }

  *::-webkit-scrollbar-track {
    background: transparent;
  }

  *::-webkit-scrollbar-thumb {
    background-color: #ff5d51;
    border-radius: 17px;
    border: 2px solid transparent;
  }

/* Dropable Menu */

.dm-menu {
  position: absolute;
  display: flex;
  flex-direction: column;
  width: 150px;
  border-radius: 10px;
  z-index: 3;
  height: auto;
}


.dm-element {

  background-color: #1a1819c9;
  padding: 10px;
  cursor: pointer;
  font-size: 14px;
  display: grid;
  grid-template-columns: 0.2fr 0.8fr;

}

.dm-element:hover {
  background-color: #ffffffc9;
  color:black

}


/* Services */

.sv {

  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  padding: 10px;
  border-radius: 10px;
  background-color: #1b1b1bc1;
  transition: 0.1s;
  user-select: none;
  -webkit-user-select: none;
}

.sv-icon {
  width: 150px;
  border-radius: 15px;
}

.sv-info {

  display: flex;
  flex-direction: row;
  gap: 20px;
  font-size: 15px;
  align-items: center;

}

.sv-list {

  padding: 10px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  overflow-y: auto;
  height: 85%;

}

.sv-actions {
  display: flex;
  flex-direction: column; 
  gap: 10px;
  align-items: flex-end;
}
.sv-power-select {

  background-color: #323031;
  padding: 10px;
  font-size: 14px;
  border-radius: 10px ;
}

.sv-power {

  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* Links */

.ln-bar {

    display: flex;
    justify-content: right;
    padding: 10px;
    gap: 10px;
}

.ln-create {

  display: flex;
  flex-direction: column;
  gap: 10px;
}

.ln-abstract-label {

  text-align: center;
  font-size: 12px;
}

.ln-abstract-div {

  display: flex;
  flex-direction: row;
  text-align: center;
  align-items: center;
  justify-content: center;
}

.ln-link-actions {

  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: flex-end;

}

.ln-link {

  display: grid;
  grid-template-columns: 1fr 3fr 1fr;
  align-items: center;
  justify-content: space-between;
  padding: 10px;
  border-radius: 10px;
  background-color: #1b1b1bc1;
  transition: 0.1s;


}

.ln-links {

  display: flex;
  flex-direction: column;
  gap: 10px;
  height: 75%;
  padding: 10px;
  overflow-y: auto;
}

.ln-link-url {

  font-size: 12px;
}

/* SERVERS */

.servers {

  display: flex;
  flex-direction: row;
  justify-content: space-between;
  padding: 20px;
  user-select: none;
  gap: 30px;
  -webkit-user-select: none;
}

.servers-box {

  display: flex;
  flex-direction: column;

  height: 100%;
  width: 100%;
}

.servers-box-title {

  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border-radius: 10px;
  background-color: #1b1b1bc1;
  transition: 0.1s;
  justify-content: space-between;
}

.servers-box-title-info {

  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: center;
}

.servers-metrics {

  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.servers-box-content {

  padding: 10px;
  background-color: #3D3B3C;
  margin-top: 20px;
  border-radius: 10px;
}

.servers-metrics-box {

  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 10px;
  border-radius: 10px;
  background-color: #1b1b1bc1;
  transition: 0.1s;
}

.servers-metrics-box div {

  display: flex;
  align-items: center;
  gap: 10px;

}

/* PIPELINES */

.pipelines {
  
  padding: 10px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  overflow-y: auto;
  height: 85%;
  
}

.pipeline {

  display: flex;
  flex-direction: row;
  justify-content: space-between;
  padding: 10px;
  border-radius: 10px;
  background-color: #1b1b1bc1;
  transition: 0.1s;


}

.pipeline-info {

  display: flex;
  gap: 10px;
  align-items: center;
  font-size: 50px;
  
}

.pipeline-title {

  font-size: 20px;
}

.pipeline-text {

  display: flex;
  flex-direction: column;
  font-size: 14px;
}

.pipeline-actions {

  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: flex-end;
  justify-content: center;
}

.pipeline-options {

  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}


.pl-reload {
  display: flex;
  align-items: center;
  font-size: 17px;
  transition: 0.1s;
  gap: 10px;
  padding: 5px;
  border-radius: 10px;
}



.pl-reload:hover {

  background-color: rgba(44, 40, 42, 0.614);

}
