.global-task-search {
  display: flex;
  align-items: center;
  gap: 4px;
  flex: 0 1 290px;
  min-width: 110px;
  margin: 0 18px;
  border: 1px solid #ffffff16;
  border-radius: 11px;
  background: #ffffff04;
}
.global-task-search input {
  width: 100%;
  min-width: 0;
  border: 0 !important;
  background: transparent !important;
  padding: 10px 12px;
  font-size: 14px;
  color: inherit;
  box-shadow: none !important;
}
.global-task-search button {
  background: transparent;
  border: 0;
  color: #98c8b0;
  font-size: 25px;
  padding: 0 12px;
  cursor: pointer;
}
.projects-portal,
.global-search-page {
  --portal-muted: #a6aeb5;
  --portal-border: #ffffff13;
  --portal-accent: #91c5ac;
  max-width: 1400px;
  margin: auto;
}
.projects-portal button,
.global-search-page button {
  cursor: pointer;
}
.projects-portal .page-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
}
.portal-roadmap-link {
  border: 1px solid #90c9ad40;
  border-radius: 10px;
  padding: 11px 15px;
  color: #b5decb;
  text-decoration: none;
  font-size: 14px;
}
.portal-projects {
  display: grid;
  gap: 16px;
  margin-top: 24px;
}
.portal-project {
  background: linear-gradient(115deg, #24292b, #202426);
  border: 1px solid var(--portal-border);
  border-radius: 18px;
  overflow: hidden;
}
.portal-project-header {
  display: flex;
  align-items: center;
  padding-right: 14px;
}
.portal-project-cover {
  display: flex;
  align-items: center;
  gap: 20px;
  flex: 1;
  min-width: 0;
  text-align: left;
  background: none;
  border: 0;
  color: inherit;
  padding: 24px;
}
.portal-project-cover > span:nth-child(2) {
  flex: 1;
  min-width: 0;
}
.portal-project-marker {
  width: 5px;
  align-self: stretch;
  border-radius: 6px;
  min-height: 55px;
}
.portal-project-cover strong {
  display: block;
  font-size: 21px;
  line-height: 1.35;
  overflow-wrap: anywhere;
  margin: 5px 0;
}
.portal-project-cover small,
.portal-project-cover p {
  font-size: 13px;
  color: var(--portal-muted);
  margin: 0;
}
.portal-project-delivery,
.portal-project-effort {
  display: grid;
  gap: 5px;
  flex-shrink: 0;
}
.portal-project-delivery > b {
  font-size: 29px;
  font-weight: 500;
  color: #c6e7d7;
}
.portal-project-delivery em {
  font-size: 17px;
  color: #9baca3;
  font-style: normal;
}
.portal-project-effort > b {
  font-size: 17px;
  font-weight: 500;
}
.portal-project-settings {
  color: #c1c9cd;
  background: #ffffff06;
  border: 1px solid var(--portal-border);
  border-radius: 10px;
  padding: 10px;
}
.portal-project-progress {
  height: 3px;
  background: #ffffff05;
}
.portal-project-progress i {
  height: 100%;
  display: block;
  background: #8cbca7;
}
.portal-project-body {
  padding: 22px;
  border-top: 1px solid var(--portal-border);
}
.portal-participants header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}
.portal-participants header small {
  display: block;
  color: var(--portal-muted);
  letter-spacing: 1px;
  font-size: 11px;
  margin-bottom: 5px;
}
.portal-participants header strong {
  font-size: 16px;
}
.portal-participants button,
.portal-stage-add,
.portal-program,
.portal-member-edit button,
.portal-members-manager > button {
  border: 1px solid #a5c7b629;
  background: #8db8a210;
  color: #b6d9c7;
  padding: 9px 12px;
  border-radius: 9px;
  font-size: 13px;
}
.portal-people {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 18px 0 22px;
}
.portal-person {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  padding: 5px 10px 5px 5px;
  background: #ffffff05;
  border: 1px solid var(--portal-border);
  border-radius: 24px;
}
.portal-person img,
.portal-person i {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  object-fit: cover;
  background: #496757;
  display: grid;
  place-items: center;
  font-style: normal;
}
.portal-person b {
  font-size: 13px;
  font-weight: 500;
}
.portal-project-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 20px;
}
.portal-project-actions .quick-add {
  flex: 1;
  margin: 0;
  min-width: 0;
}
.portal-project-actions .task-create-card {
  margin: 0 !important;
}
.portal-stage {
  border: 1px solid var(--portal-border);
  border-radius: 12px;
  margin: 12px 0;
  overflow: hidden;
}
.portal-stage > summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 16px;
  background: #ffffff03;
  cursor: pointer;
  list-style: none;
}
.portal-stage > summary strong {
  font-size: 15px;
}
.portal-stage > summary small {
  display: block;
  font-size: 13px;
  color: var(--portal-muted);
  margin-top: 4px;
}
.portal-stage > summary > span {
  display: flex;
  align-items: center;
  gap: 12px;
}
.portal-stage > summary i,
.portal-stage > summary em {
  font-style: normal;
  font-size: 13px;
  color: #b6c4bc;
}
.portal-task-row {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 13px 15px 13px calc(15px + var(--depth, 0) * 12px);
  border-top: 1px solid #ffffff09;
  min-width: 0;
}
.portal-task-row:hover {
  background: #ffffff03;
}
.portal-task-title {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 10px;
  background: none;
  border: 0;
  color: inherit;
  text-align: left;
  padding: 0;
}
.portal-task-title i {
  font-style: normal;
  color: #99bbaa;
  font-size: 22px;
}
.portal-task-title strong {
  font-size: 14px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.portal-task-title small {
  display: block;
  color: var(--portal-muted);
  font-size: 13px;
  line-height: 1.6;
}
.portal-task-status {
  font-size: 12px;
  color: var(--portal-muted);
  max-width: 155px;
}
.portal-task-group > summary {
  list-style: none;
  position: relative;
  cursor: pointer;
}
.portal-task-group > summary .portal-task-row {
  padding-bottom: 28px;
}
.portal-expand {
  position: absolute;
  bottom: 7px;
  left: calc(47px + var(--depth, 0) * 12px);
  font-size: 12px;
  color: #aeb8be;
}
.portal-task-group {
  background: #ffffff02;
}
.portal-task-row.is-pending {
  background: linear-gradient(90deg, #b68b1914, transparent);
}
.portal-pending-count {
  font-size: 12px;
  color: #edcf81;
  font-weight: 500;
}
.portal-empty-stage,
.portal-empty {
  padding: 24px;
  color: var(--portal-muted);
  font-size: 14px;
}
.portal-empty {
  border: 1px dashed #ffffff25;
  border-radius: 16px;
  text-align: center;
}
.portal-edit-project,
.portal-members-manager {
  display: grid;
  gap: 18px;
}
.portal-edit-project label,
.portal-members-manager label,
.portal-field {
  display: grid;
  gap: 8px;
  font-size: 14px;
}
.portal-member-edit {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 0;
  gap: 15px;
  border-bottom: 1px solid #ffffff14;
}
.portal-members-manager p {
  font-size: 14px;
  color: #b4bdc4;
  line-height: 1.6;
}
.portal-backlog-option {
  display: flex;
  gap: 12px;
  align-items: center;
  padding: 15px;
  border: 1px solid #90bda533;
  border-radius: 12px;
  margin: 12px 0;
}
.portal-backlog-option input {
  width: auto !important;
}
.portal-backlog-option small {
  display: block;
  font-size: 13px;
  color: #afbbb5;
  margin-top: 4px;
}
.program-task {
  display: grid;
  gap: 20px;
}
.program-task header {
  display: flex;
  gap: 16px;
  padding-bottom: 20px;
  border-bottom: 1px solid #ffffff16;
}
.program-task header > span {
  font-size: 28px;
  color: #a1cdb6;
}
.program-task header small {
  font-size: 11px;
  letter-spacing: 1px;
  color: #a1cdb6;
}
.program-task header strong {
  display: block;
  font-size: 19px;
  margin: 6px 0;
}
.program-task p {
  font-size: 14px;
  color: #b0b8c0;
  line-height: 1.6;
  margin: 6px 0;
}
.program-owner {
  display: grid;
  gap: 6px;
}
.program-owner small {
  color: #a8b6ae;
}
.program-date {
  display: flex;
  align-items: end;
  gap: 12px;
}
.program-date label {
  display: grid;
  gap: 8px;
  flex: 1;
}
.program-date button {
  border: 1px solid #91c5ac55;
  color: #c1e2d1;
  background: #91c5ac15;
  border-radius: 10px;
  padding: 12px 18px;
}
.program-confirm,
.program-leaf {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  font-size: 14px;
  line-height: 1.5;
}
.program-confirm input,
.program-leaf input {
  width: auto !important;
  margin-top: 4px;
}
.program-leaf {
  padding: 12px 0;
  border-bottom: 1px solid #ffffff12;
}
.program-leaf small {
  display: block;
  color: #aebcb4;
  font-size: 13px;
}
.program-task fieldset {
  border: 1px solid #ffffff20;
  border-radius: 12px;
  padding: 15px;
}
.search-results-form {
  display: flex;
  gap: 12px;
  align-items: end;
  margin: 28px 0;
}
.search-results-form label {
  display: grid;
  gap: 8px;
  flex: 1;
}
.search-results-form label span {
  font-size: 13px;
  color: var(--portal-muted);
}
.search-results-form button,
.search-pagination button {
  padding: 12px 18px;
  background: #91c5ac15;
  border: 1px solid #91c5ac40;
  color: #c6e9d8;
  border-radius: 10px;
}
.search-result-groups > section {
  margin: 28px 0;
}
.search-result-groups > section > header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  margin: 14px 0;
}
.search-result-groups h2 {
  font-size: 16px;
  margin: 0;
}
.search-result-groups header > span {
  color: var(--portal-muted);
  font-size: 13px;
}
.search-task-result {
  display: flex;
  align-items: center;
  width: 100%;
  gap: 16px;
  background: #ffffff03;
  border: 1px solid var(--portal-border);
  border-radius: 13px;
  text-align: left;
  color: inherit;
  padding: 18px;
  margin-bottom: 9px;
}
.search-task-result:hover {
  background: #96bdab0b;
  border-color: #96bdab55;
}
.search-result-icon {
  color: #a1c9b4;
  font-size: 24px;
}
.search-result-content {
  flex: 1;
  min-width: 0;
}
.search-result-content > strong {
  font-size: 16px;
  overflow-wrap: anywhere;
}
.search-result-content p {
  color: #abb5bd;
  font-size: 14px;
  line-height: 1.6;
  margin: 5px 0;
  overflow-wrap: anywhere;
}
.search-result-context {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}
.search-result-context i {
  font-style: normal;
  font-size: 12px;
  padding: 3px 7px;
  border-radius: 5px;
  background: #ffffff06;
  color: #bbc9c1;
}
.search-result-state {
  display: grid;
  gap: 7px;
  text-align: right;
  max-width: 145px;
}
.search-result-state b {
  font-size: 13px;
  font-weight: 500;
}
.search-result-state small {
  font-size: 12px;
  color: #97bba7;
}
.search-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  font-size: 14px;
}
.search-pagination button:disabled {
  opacity: 0.35;
  cursor: default;
}
.project-task-suggestions {
  padding: 16px;
  border: 1px solid #9cbaa844;
  border-radius: 12px;
  background: #8eaf9a0a;
  margin: 16px 0;
}
.project-task-suggestions button {
  border: 1px solid #9cbaa844;
  background: #8eaf9a15;
  border-radius: 8px;
  padding: 8px 12px;
  color: #c1e2cf;
}
.task-context-host[hidden] {
  display: none !important;
}
.existing-project-tasks {padding:18px;border:1px solid #96b7a640;border-radius:12px;margin:18px 0;background:#85a9950a}
.existing-project-tasks header {display:flex;justify-content:space-between;gap:12px}
.existing-project-tasks header strong {display:block;margin-top:5px;font-size:16px}
.existing-project-tasks p,.existing-project-tasks small {font-size:13px;line-height:1.6;color:#b2beb7}
.existing-project-tasks article {display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 0;border-top:1px solid #ffffff16}
.existing-project-tasks article small {display:block}
.existing-project-tasks button {flex-shrink:0;background:#8ca99215;border:1px solid #91b29d40;color:#c1dbc9;border-radius:9px;padding:9px 12px}
.existing-project-tasks button:disabled {opacity:.45}
.projects-portal .project-create-card,.projects-portal .task-create-card {background:linear-gradient(110deg,#91bea013,#202729)!important;color:#d5e5dc!important;border:1px dashed #a0c4ae45!important}
.projects-portal .task-create-card .create-card-copy strong {color:#e0ebe5!important}
.projects-portal .task-create-card em,.projects-portal .task-create-card i {color:#adbdb3!important}
@media (max-width: 1000px) {
  .global-task-search {
    flex-basis: 180px;
    margin: 0 8px;
  }
  .portal-project-cover {
    gap: 14px;
    padding: 18px;
  }
  .portal-project-effort {
    display: none;
  }
  .portal-project-body {
    padding: 14px;
  }
}
@media (max-width: 700px) {
  .topbar {
    flex-wrap: wrap;
  }
  .global-task-search {
    order: 3;
    flex: 1 1 100%;
    margin: 8px 0;
  }
  .projects-portal .page-head {
    align-items: flex-start;
    flex-direction: column;
  }
  .portal-task-row {
    flex-wrap: wrap;
    gap: 8px;
  }
  .portal-task-title {
    flex-basis: 75%;
  }
  .portal-task-status {
    margin-left: 30px;
  }
  .portal-project-actions {
    align-items: stretch;
    flex-direction: column;
  }
  .portal-project-delivery > b {
    font-size: 23px;
  }
  .portal-project-cover strong {
    font-size: 17px;
  }
  .portal-stage > summary > span {
    flex-wrap: wrap;
    justify-content: end;
  }
  .search-task-result {
    flex-wrap: wrap;
  }
  .search-result-state {
    margin-left: 38px;
    max-width: none;
    display: flex;
    text-align: left;
  }
  .search-results-form {
    align-items: stretch;
    flex-direction: column;
  }
  .portal-participants header {
    flex-wrap: wrap;
  }
}
