.projectListFrame {
  background: rgba(255, 255, 255, 0.03);
  border-radius: 32px;
  backdrop-filter: blur(20px) saturate(160%);
  -webkit-backdrop-filter: blur(20px) saturate(160%);
  color: white;
  padding: 40px;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.3);

  width: min(
    var(--page-content-width-desktop),
    calc(100vw - var(--page-content-gutter-desktop))
  );
  margin: var(--page-content-margin-top-desktop) auto 0;
}

/* ============= header ============= */
.projectlistheader {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}

.projectlistheaderLeft p,
.projectlistheaderLeft h1 {
  margin: 0;
}

.workspaceLabel {
  font-size: 11px;
  font-weight: 800;
  color: rgba(255, 255, 255, 0.4);
  text-transform: uppercase;
  letter-spacing: 1.5px;
  margin-bottom: 8px;
}

.projectListTitle {
  font-size: 36px;
  font-weight: 800;
  letter-spacing: -1px;
  background: linear-gradient(to bottom, #fff, rgba(255, 255, 255, 0.7));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.projectlistheaderRight {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.projectlistheaderRightBtn {
  padding: 10px 18px;
  color: white;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 12px;
  backdrop-filter: blur(16px) saturate(140%);
  -webkit-backdrop-filter: blur(16px) saturate(140%);
  cursor: pointer;
  transition:
    transform 0.2s ease,
    background 0.2s ease,
    border-color 0.2s ease;
}

.projectlistheaderRightBtn:hover {
  transform: translateY(-1px);
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.26);
}

.newProjectBtn {
  background: #fff;
  color: #000;
  border: none;
  padding: 12px 24px;
}

.newProjectBtn:hover {
  background: #e0e0e0;
  transform: translateY(-2px);
}

.headerUnderDescription {
  margin: 12px 0 0 0;
  color: rgba(255, 255, 255, 0.72);
  font-size: 13px;
}

/* ============= stats ============= */
.fiveBoxesFrame {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 12px;
  margin-top: 22px;
}

.fiveBoxes {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 20px;
  padding: 20px;
  transition:
    transform 0.2s ease,
    background 0.2s ease;
}

.fiveBoxes:hover {
  background: rgba(255, 255, 255, 0.08);
  transform: translateY(-2px);
}

.fiveBoxesTitle {
  font-size: 11px;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.4);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.numberofiveBoxes {
  font-size: 32px;
  font-weight: 800;
  margin-top: 6px;
  font-variant-numeric: tabular-nums;
}

/* ============= created by me ============= */
.createdByMeFrame {
  margin-top: 24px;
}

.createdByMeHeader {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12px;
  gap: 16px;
}

.createdByMeHeaderLeft {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.createdByMeHeaderLeftTitle {
  font-size: 22px;
  margin: 0;
  line-height: 1.2;
}

.createdByMeHeaderLeftDescription {
  font-size: 13px;
  margin: 0;
  color: rgba(255, 255, 255, 0.719);
}

.createdByMeHeaderRightNumberFrame {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  background: rgba(255, 255, 255, 0.034);
  border: 1px solid rgba(255, 255, 255, 0.096);
  border-radius: 50%;
  backdrop-filter: blur(5px) saturate(140%);
  -webkit-backdrop-filter: blur(5px) saturate(140%);
}

.createdByMeHeaderRightNumber {
  margin: 0;
  font-size: 14px;
  font-weight: 700;
}

/* ============= empty state ============= */
.createdByMeMain {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 18px;
  backdrop-filter: blur(16px) saturate(140%);
  -webkit-backdrop-filter: blur(16px) saturate(140%);
  color: white;
  padding: 34px 20px;
  text-align: center;
}

.emptyProjectIcon {
  font-size: 34px;
  margin-bottom: 10px;
  opacity: 0.9;
}

.createdByMeMainTitle {
  margin: 0;
  font-size: 20px;
  font-weight: 700;
}

.createdByMeMainDescription {
  margin: 10px 0 18px 0;
  font-size: 14px;
  color: rgba(255, 255, 255, 0.72);
}

.createdByMeMainBtn {
  padding: 11px 18px;
  color: white;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 12px;
  backdrop-filter: blur(16px) saturate(140%);
  -webkit-backdrop-filter: blur(16px) saturate(140%);
  cursor: pointer;
  transition:
    transform 0.2s ease,
    background 0.2s ease,
    border-color 0.2s ease;
}

.createdByMeMainBtn:hover {
  transform: translateY(-1px);
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.24);
}

/* ============= responsive ============= */
@media (max-width: 1200px) {
  .fiveBoxesFrame {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 768px) {
  .projectListFrame {
    padding: 24px 16px;
  }

  .projectListTitle {
    font-size: 28px;
  }

  .fiveBoxesFrame {
    grid-template-columns: repeat(2, 1fr);
  }

  .createdByMeHeader {
    align-items: flex-start;
  }
}

@media (max-width: 520px) {
  .projectlistheader {
    flex-direction: column;
    align-items: flex-start;
  }

  .projectlistheaderRight {
    width: 100%;
  }

  .projectlistheaderRightBtn {
    width: 100%;
  }

  .fiveBoxesFrame {
    grid-template-columns: 1fr;
  }

  .createdByMeHeader {
    flex-direction: row;
  }
}

.projectCardsList {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.projectRowCard {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 20px;
  padding: 24px;
  margin-bottom: 12px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  cursor: pointer;
}

.projectRowCard:hover {
  background: rgba(255, 255, 255, 0.07);
  border-color: rgba(255, 255, 255, 0.2);
  transform: scale(1.005);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
}

.projectRowCardTop {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
}

.projectRowTitle {
  font-size: 20px;
  font-weight: 700;
  color: #fff;
}

.projectRowDescription {
  margin: 0;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.72);
  line-height: 1.5;
}
.projectRowMeta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
  margin-top: 14px;
  font-size: 12px;
  color: rgba(255, 255, 255, 0.7);
}

.projectRowDates {
  display: flex;
  align-items: center;
  gap: 18px;
  flex-wrap: wrap;
  min-width: 0;
}

.projectRowDates span {
  display: inline-flex;
  align-items: center;
  line-height: 1.4;
}

.projectRowStatus {
  padding: 6px 14px;
  border-radius: 10px;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  background: rgba(255, 255, 255, 0.1);
}

.projectRowMetaBtn {
  display: flex;
  align-items: center;
  gap: 9px;
  flex-shrink: 0;
}

.projectRowMetaBtnfor {
  border: 1px solid rgba(255, 255, 255, 0.18);
  background: rgba(255, 255, 255, 0.08);
  color: white;
  padding: 7px 12px;
  border-radius: 10px;
  backdrop-filter: blur(16px) saturate(140%);
  -webkit-backdrop-filter: blur(16px) saturate(140%);
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
  transition:
    transform 0.18s ease,
    background 0.18s ease,
    border-color 0.18s ease,
    box-shadow 0.18s ease;
}

.projectRowMetaBtnfor:hover {
  transform: translateY(-1px);
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.28);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.16);
}

.projectRowMetaBtnfor:active {
  transform: translateY(0);
}

.projectRowMetaBtnfor.edit {
  color: #e6f2ff;
}

.projectRowMetaBtnfor.delete {
  background: rgba(255, 59, 48, 0.1);
  color: #ff453a;
  border: 1px solid rgba(255, 59, 48, 0.2);
}

.projectRowMetaBtnfor.delete:hover {
  background: #ff453a;
  color: #fff;
}

@media (max-width: 768px) {
  .projectRowMeta {
    align-items: flex-start;
    flex-direction: column;
  }

  .projectRowDates {
    gap: 10px 16px;
  }

  .projectRowMetaBtn {
    width: 100%;
  }

  .projectRowMetaBtnfor {
    flex: 1;
    justify-content: center;
  }
}

.text-green {
  color: #61d394;
}

.text-gray {
  color: #b8bcc8;
}

.text-yellow {
  color: #f5c451;
}

.text-red {
  color: #ff7b7b;
}

/*edit, update project part*/
.projectRowMainInfo {
  min-width: 0;
  flex: 1;
}

.projectRowTopRight {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
  flex-shrink: 0;
}

.projectRowActions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.projectActionBtn {
  border: 1px solid rgba(255, 255, 255, 0.16);
  background: rgba(255, 255, 255, 0.08);
  color: white;
  padding: 8px 12px;
  border-radius: 10px;
  cursor: pointer;
  font-size: 12px;
  font-weight: 600;
  transition:
    transform 0.2s ease,
    background 0.2s ease,
    border-color 0.2s ease,
    opacity 0.2s ease;
}

.projectActionBtn:hover {
  transform: translateY(-1px);
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.24);
}

.projectActionBtn.edit {
  color: #d9ecff;
}

.projectActionBtn.delete {
  color: #ff9a9a;
  border-color: rgba(255, 123, 123, 0.26);
  background: rgba(255, 123, 123, 0.08);
}

.projectActionBtn.delete:hover {
  background: rgba(255, 123, 123, 0.14);
  border-color: rgba(255, 123, 123, 0.4);
}

@media (max-width: 768px) {
  .projectRowCardTop {
    flex-direction: column;
    align-items: flex-start;
  }

  .projectRowTopRight {
    width: 100%;
    align-items: flex-start;
  }

  .projectRowActions {
    flex-wrap: wrap;
  }
}

/*delete popup part*/
.projectDeletePopupFrame {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: var(--theme-background-popup);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.projectDeletePopup {
  width: min(460px, 100%);
  border: 1px solid rgba(255, 255, 255, 0.16);
  background: rgba(255, 255, 255, 0.08);
  border-radius: 24px;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.3);
  backdrop-filter: blur(18px) saturate(150%);
  -webkit-backdrop-filter: blur(18px) saturate(150%);
  color: white;
  padding: 26px 24px 22px;
}

.projectDeletePopupTop {
  text-align: center;
}

.projectDeletePopupIcon {
  width: 58px;
  height: 58px;
  margin: 0 auto 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(255, 107, 107, 0.12);
  border: 1px solid rgba(255, 107, 107, 0.22);
  font-size: 26px;
  color: #ffb4b4;
}

.projectDeletePopupTitle {
  margin: 0;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.2;
}

.projectDeletePopupDescription {
  margin: 12px 0 0;
  font-size: 15px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.88);
}

.projectDeletePopupDescription strong {
  color: white;
  word-break: break-word;
}

.projectDeletePopupSubDescription {
  margin: 8px 0 0;
  font-size: 13px;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.62);
}

.projectDeletePopupActions {
  display: flex;
  justify-content: center;
  margin-top: 24px;
  gap: 20px;
}

.projectDeletePopupBtn {
  min-width: 132px;
  padding: 11px 16px;
  border-radius: 12px;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  transition:
    transform 0.18s ease,
    background 0.18s ease,
    border-color 0.18s ease,
    opacity 0.18s ease;
}

.projectDeletePopupBtn:hover {
  transform: translateY(-1px);
}

.projectDeletePopupBtn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  transform: none;
}

.projectDeletePopupBtn.cancel {
  border: 1px solid rgba(255, 255, 255, 0.18);
  background: rgba(255, 255, 255, 0.07);
  color: white;
  backdrop-filter: blur(16px) saturate(140%);
  -webkit-backdrop-filter: blur(16px) saturate(140%);
}

.projectDeletePopupBtn.cancel:hover {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.26);
}

.projectDeletePopupBtn.delete {
  border: 1px solid rgba(255, 107, 107, 0.28);
  background: rgba(255, 107, 107, 0.14);
  color: #ffd2d2;
  backdrop-filter: blur(16px) saturate(140%);
  -webkit-backdrop-filter: blur(16px) saturate(140%);
}

.projectDeletePopupBtn.delete:hover {
  background: rgba(255, 107, 107, 0.22);
  border-color: rgba(255, 107, 107, 0.4);
}

@media (max-width: 520px) {
  .projectDeletePopup {
    padding: 22px 16px 18px;
    border-radius: 20px;
  }

  .projectDeletePopupTitle {
    font-size: 21px;
  }

  .projectDeletePopupActions {
    flex-direction: column;
  }

  .projectDeletePopupBtn {
    width: 100%;
  }
}

/*=========update Project part =============*/
/* update popup part */
.projectUpdateFrame {
  position: fixed;
  inset: 0;
  z-index: 99998;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: var(--theme-background-popup);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.projectUpdatePopup {
  width: min(560px, 100%);
  border: 1px solid rgba(255, 255, 255, 0.16);
  background: rgba(255, 255, 255, 0.08);
  border-radius: 24px;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.3);
  backdrop-filter: blur(18px) saturate(150%);
  -webkit-backdrop-filter: blur(18px) saturate(150%);
  color: white;
  padding: 26px 24px 22px;
}

.projectUpdatePopupTop {
  text-align: center;
  margin-bottom: 20px;
}

.projectUpdatePopupIcon {
  width: 58px;
  height: 58px;
  margin: 0 auto 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(120, 180, 255, 0.12);
  border: 1px solid rgba(120, 180, 255, 0.22);
  font-size: 24px;
  color: #d8ebff;
}

.projectUpdatePopupTitle {
  margin: 0;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.2;
}

.projectUpdatePopupDescription {
  margin: 10px 0 0;
  font-size: 14px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.72);
}

.projectUpdateForm {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.projectUpdateGrid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}

.projectUpdateField {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.projectUpdateLabel {
  font-size: 13px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.84);
}

.projectUpdateInput,
.projectUpdateTextarea,
.projectUpdateSelect {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.06);
  color: white;
  border-radius: 14px;
  padding: 12px 14px;
  font-size: 14px;
  outline: none;
  backdrop-filter: blur(12px) saturate(140%);
  -webkit-backdrop-filter: blur(12px) saturate(140%);
  transition:
    border-color 0.18s ease,
    background 0.18s ease,
    box-shadow 0.18s ease;
}

.projectUpdateInput:focus,
.projectUpdateTextarea:focus,
.projectUpdateSelect:focus {
  border-color: rgba(140, 190, 255, 0.42);
  background: rgba(255, 255, 255, 0.09);
  box-shadow: 0 0 0 3px rgba(120, 180, 255, 0.12);
}

.projectUpdateTextarea {
  resize: vertical;
  min-height: 110px;
}

.projectUpdateSelect option {
  color: #111;
}

.projectUpdateError {
  margin: 2px 0 0;
  font-size: 13px;
  color: #ffb3b3;
}

.projectUpdateActions {
  display: flex;
  justify-content: center;
  gap: 16px;
  margin-top: 22px;
}

.projectUpdateBtn {
  min-width: 140px;
  padding: 11px 16px;
  border-radius: 12px;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  transition:
    transform 0.18s ease,
    background 0.18s ease,
    border-color 0.18s ease,
    opacity 0.18s ease;
}

.projectUpdateBtn:hover {
  transform: translateY(-1px);
}

.projectUpdateBtn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  transform: none;
}

.projectUpdateBtn.cancel {
  border: 1px solid rgba(255, 255, 255, 0.18);
  background: rgba(255, 255, 255, 0.07);
  color: white;
}

.projectUpdateBtn.cancel:hover {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.26);
}

.projectUpdateBtn.save {
  border: 1px solid rgba(120, 180, 255, 0.28);
  background: rgba(120, 180, 255, 0.14);
  color: #e7f3ff;
}

.projectUpdateBtn.save:hover {
  background: rgba(120, 180, 255, 0.22);
  border-color: rgba(120, 180, 255, 0.42);
}

@media (max-width: 640px) {
  .projectUpdatePopup {
    padding: 22px 16px 18px;
    border-radius: 20px;
  }

  .projectUpdateGrid {
    grid-template-columns: 1fr;
  }

  .projectUpdateActions {
    flex-direction: column;
  }

  .projectUpdateBtn {
    width: 100%;
  }
}

.projectFilterGroup {
  display: flex;
  align-items: center;
  gap: 8px;
}

.projectFilterBtn {
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.04);
  color: rgba(255, 255, 255, 0.72);
  border-radius: 999px;
  padding: 8px 14px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition:
    background 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease,
    transform 0.15s ease;
}

.projectFilterBtn:hover {
  background: rgba(255, 255, 255, 0.08);
  color: white;
}

.projectFilterBtn.active {
  background: rgba(255, 255, 255, 0.14);
  color: white;
  border-color: rgba(255, 255, 255, 0.18);
}

.createdByMeHeaderRight {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.archiveCountdownBadge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 10px;
  padding: 7px 12px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.01em;
  color: #ffd7d7;
  background: rgba(255, 90, 90, 0.12);
  border: 1px solid rgba(255, 120, 120, 0.22);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.projectArchiveDeleteDate {
  display: inline-flex;
  align-items: center;
  margin-top: 2px;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
  color: #ffdddd;
  background: rgba(255, 86, 86, 0.12);
  border: 1px solid rgba(255, 110, 110, 0.22);
}

@media (max-width: 1600px) and (min-width: 1025px) {
  .projectListFrame {
    width: calc(100% - var(--page-content-gutter-laptop));
    max-width: var(--page-content-width-laptop);
    margin: var(--page-content-margin-top-laptop) auto 0;
  }
}

@media (min-width: 1900px) {
  .projectListFrame {
    width: min(
      var(--page-content-width-ultra),
      calc(100vw - var(--page-content-gutter-ultra))
    );
    margin: var(--page-content-margin-top-ultra-default) auto 0;
    padding: 44px;
    border-radius: 36px;
  }

  .projectListTitle {
    font-size: 42px;
  }

  .workspaceLabel {
    font-size: 12px;
    letter-spacing: 1.7px;
  }

  .headerUnderDescription {
    font-size: 14px;
  }

  .projectlistheaderRightBtn {
    padding: 12px 20px;
    font-size: 14px;
    border-radius: 14px;
  }

  .newProjectBtn {
    padding: 13px 26px;
  }

  .fiveBoxesFrame {
    gap: 14px;
    margin-top: 24px;
  }

  .fiveBoxes {
    padding: 24px;
    border-radius: 22px;
  }

  .fiveBoxesTitle {
    font-size: 12px;
  }

  .numberofiveBoxes {
    font-size: 36px;
  }

  .createdByMeFrame {
    margin-top: 28px;
  }

  .createdByMeHeaderLeftTitle {
    font-size: 24px;
  }

  .createdByMeHeaderLeftDescription {
    font-size: 14px;
  }

  .createdByMeMain {
    padding: 40px 24px;
    border-radius: 22px;
  }

  .createdByMeMainTitle {
    font-size: 22px;
  }

  .createdByMeMainDescription {
    font-size: 15px;
  }

  .projectRowCard {
    padding: 28px;
    border-radius: 22px;
  }

  .projectRowTitle {
    font-size: 22px;
  }

  .projectRowDescription {
    font-size: 14px;
  }

  .projectRowMeta {
    font-size: 13px;
    margin-top: 16px;
  }

  .projectRowStatus {
    font-size: 12px;
    padding: 7px 15px;
  }

  .projectActionBtn,
  .projectRowMetaBtnfor {
    font-size: 13px;
    padding: 9px 14px;
    border-radius: 12px;
  }

  .projectFilterBtn {
    font-size: 14px;
    padding: 9px 16px;
  }
}
