:root{
  color-scheme:dark;
}

body{
  margin:0;
  background:#0f1115;
  color:#e8eaf0;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial;
  overscroll-behavior:none;
  display:flex;
  flex-direction:column;
  min-height:100vh;
}

.wrap{
  max-width:980px;
  margin:0 auto;
  padding:18px;
}

.card{
  background:#171a21;
  border:1px solid #2a2f3a;
  border-radius:16px;
  padding:16px;
  box-shadow:0 10px 25px rgba(0,0,0,.25);
}

input,
button{
  background:#0f1115;
  color:#e8eaf0;
  border:1px solid #2a2f3a;
  border-radius:12px;
  padding:12px 14px;
  font-size:15px;
}
input::placeholder{
  color:#8a90a358;
  opacity:1;
}

input::-webkit-input-placeholder{
  color:#8a90a358;
}

input::-moz-placeholder{
  color:#8a90a358;
}

input:-ms-input-placeholder{
  color:#8a90a358;
}
button{
  cursor:pointer;
}

button.danger{
  border-color:#7f1d1d;
}

button.ghost{
  background:transparent;
}

.row{
  display:flex;
  padding: 10px 2px 10px 2px;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
}

.list{
  margin-top:14px;
  display:grid;
  gap:10px;
}

a{
  color:#7dd3fc;
  text-decoration:none;
}

.item{
  padding:12px 14px;
  border:1px solid #2a2f3a;
  border-radius:14px;
  background:#0f1115;
  display:flex;
  justify-content:space-between;
  gap:4px;
  align-items:center;
}

.muted{
  opacity:.75;
  font-size:13px;
}

.btns{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  position:relative;
  min-width:280px;
}

.projectMenu{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  margin-left:auto;
}

.projectActions{
  display:flex;
  align-items:center;
  gap:10px;
  overflow:hidden;
  max-width:0;
  opacity:0;
  transform:translateX(12px);
  pointer-events:none;
  transition:max-width .28s ease, opacity .2s ease, transform .28s ease;
  white-space:nowrap;
}

.projectMenu.open .projectActions{
  max-width:320px;
  opacity:1;
  transform:translateX(0);
  pointer-events:auto;
}

.projectAction{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  padding:0;
  border:1px solid #2a2f3a;
  border-radius:14px;
  background:#0f1115;
  color:#e8eaf0;
  text-decoration:none;
  font-size:19px;
  line-height:1;
  flex:0 0 42px;
}

.projectMenuToggle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:56px;
  height:56px;
  padding:0;
  border:1px solid #2a2f3a;
  border-radius:20px;
  background:#0f1115;
  color:#e8eaf0;
  font-size:24px;
  line-height:1;
  flex:0 0 56px;
}

.projectAction.danger{
  border-color:#7f1d1d;
}

.badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-left:8px;
  padding:2px 8px;
  min-width:28px;
  height:22px;
  border-radius:999px;
  border:1px solid #2a2f3a;
  background:rgba(23,26,33,.55);
  font-size:12px;
  line-height:1;
  opacity:.9;
}

.aboutCard p{
  line-height:1.6;
}

.aboutToggle{
  margin-top:8px;
  background:none;
  border:none;
  color:#7aa2ff;
  font-size:14px;
  cursor:pointer;
  display:flex;
  align-items:center;
  gap:6px;
}

.aboutToggle .chevron{
  transition:transform .25s ease;
}

.aboutMore{
  max-height:0;
  overflow:hidden;
  transition:max-height .35s ease;
}

.aboutCard.open .aboutMore{
  max-height:800px;
}

.aboutCard.open .chevron{
  transform:rotate(180deg);
}

.footer{
  margin-top:auto;
  text-align:center;
  font-size:13px;
  opacity:.7;
  padding:14px;
}

.footer a{
  color:#7dd3fc;
}

@media (max-width:640px){

  .btns{
    min-width:unset;
  }

  .projectMenu.open .projectActions{
    max-width:220px;
  }

  .projectAction{
    width:34px;
    height:34px;
    flex:0 0 34px;
    border-radius:10px;
    font-size:15px;
  }

  .projectMenuToggle{
    width:44px;
    height:44px;
    flex:0 0 44px;
    border-radius:14px;
    font-size:18px;
  }

  .item{
    align-items:flex-start;
  }

  .item > div:first-child{
    padding-top:18px;
  }

}
@media (max-width:640px){

  .item{
    flex-wrap:wrap;
  }

  .item > div:first-child{
    width:100%;
    padding-top:0;
  }

  .btns{
    width:100%;
    justify-content:flex-end;
    margin-top:8px;
  }

}