/* Projects list proportions. Scoped to preserve engineering forms and dialogs. */
.projects-workspace {
  gap: 8px !important;
  font-family: "Open Sans", Arial, sans-serif;
}
.projects-workspace > .project-layout-header {
  display: grid !important;
  grid-template-columns: 120px minmax(0, 1fr) auto !important;
  gap: 8px 16px !important;
  padding: 12px 16px !important;
  align-items: center;
  border: 0;
  border-radius: 8px;
  background: #0095ba;
  flex: 0 0 auto;
}
.projects-workspace .project-layout-header > .energisa-project-logo {
  width: 112px !important;
  height: 38px !important;
  object-fit: contain;
}
.projects-workspace .project-layout-header > div {
  min-width: 0;
  flex: initial;
  text-align: left !important;
}
.projects-workspace .project-layout-header h2 {
  font-size: 21px !important;
  line-height: 1.25;
  color: white;
  margin: 0 !important;
}
.projects-workspace .project-layout-header p {
  font-size: 12px !important;
  margin: 3px 0 0 !important;
  color: white;
}
.projects-workspace .project-layout-header > nav.projects-workspace-tabs {
  grid-column: 1 / 3;
  grid-row: 2;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  width: 340px !important;
  max-width: 100%;
  min-height: 38px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  gap: 6px;
}
.projects-workspace .project-layout-header > button {
  grid-column: 3;
  grid-row: 2;
  width: auto !important;
  background: #f47719;
  color: #fff;
  border: 1px solid #f47719;
}
.projects-workspace .projects-workspace-tabs button {
  min-height: 38px !important;
  padding: 7px 14px !important;
  font-size: 14px !important;
  background: #fff !important;
  color: #007b99 !important;
  border: 1px solid #b8dce4 !important;
}
.projects-workspace .projects-workspace-tabs button[aria-selected="true"] {
  background: #f47719 !important;
  border-color: #f47719 !important;
  color: white !important;
}
.projects-workspace > .project-layout-tools {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  width: 100%;
  align-self: stretch;
}
.projects-workspace > .project-layout-tools > button {
  width: auto !important;
  flex: 0 1 auto;
  min-height: 38px !important;
  padding: 8px 14px !important;
  font-size: 13px !important;
  color: #007b99;
  border-color: #b8cbd5;
}
.projects-workspace > .project-layout-tools > details {
  margin-left: auto;
  min-width: 0;
}
.projects-workspace > .project-layout-tools > details[open] {
  flex: 1 0 100%;
  margin-left: 0;
}
.projects-workspace .project-layout-tools summary {
  min-height: 38px;
  padding: 8px;
  box-sizing: border-box;
  font-size: 13px;
  color: #007b99;
  cursor: pointer;
}
.projects-workspace .project-stage-tabs {
  flex-wrap: wrap !important;
  overflow: visible !important;
  min-height: 0 !important;
  position: static !important;
  gap: 5px;
}
.projects-workspace.projects-workspace .project-stage-tabs button {
  min-height: 36px !important;
  font-size: 12px !important;
  padding: 7px 9px !important;
  border: 1px solid #d3dce4;
  border-radius: 6px;
}
.projects-workspace .project-stage-tabs button[aria-selected="true"] {
  background: #0095ba !important;
  color: #fff !important;
  border-color: #0095ba;
}
.projects-workspace .project-list-toolbar {
  grid-template-columns: minmax(0, 1fr) auto auto !important;
  gap: 8px;
}
.projects-workspace .project-list-toolbar > input { grid-column: 1 !important; }
.projects-workspace .project-list-filters > summary { white-space: nowrap; }
.projects-workspace .project-list-filters[open] { grid-column: 1 / -1; }
.projects-workspace .project-list-count { white-space: nowrap; }
.projects-workspace .cards-grid { grid-template-columns: minmax(0, 1fr); gap: 10px; }
.projects-workspace .cards-grid > article,
.projects-workspace .cards-grid > .card {
  padding: 12px !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 10px;
  box-shadow: none;
}
.projects-workspace.projects-workspace .card-head h3 { font-size: 16px !important; }
.projects-workspace .card-head { gap: 8px; min-width: 0; }
.projects-workspace .card-head > div { min-width: 0; overflow-wrap: anywhere; }
.projects-workspace .doc-buttons { display: flex; flex-wrap: wrap; gap: 6px; }
@media (max-width: 700px) {
  .projects-workspace > .project-layout-header {
    grid-template-columns: 84px minmax(0, 1fr) !important;
    gap: 8px !important;
    padding: 10px !important;
  }
  .projects-workspace .project-layout-header > .energisa-project-logo {
    width: 80px !important;
    height: 32px !important;
  }
  .projects-workspace .project-layout-header h2 { font-size: 17px !important; }
  .projects-workspace .project-layout-header p { font-size: 10px !important; }
  .projects-workspace .project-layout-header > nav.projects-workspace-tabs {
    grid-column: 1 / -1;
    width: 100% !important;
  }
  .projects-workspace .project-layout-header > button {
    grid-column: 1 / -1;
    grid-row: 3;
    justify-self: start;
    min-height: 44px;
  }
  .projects-workspace > .project-layout-tools {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .projects-workspace > .project-layout-tools > button {
    min-width: 0;
    width: 100% !important;
    min-height: 44px !important;
    white-space: normal;
    padding: 6px !important;
  }
  .projects-workspace > .project-layout-tools > details {
    grid-column: 1 / -1;
    margin-left: 0;
  }
  .projects-workspace .project-stage-tabs {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .projects-workspace.projects-workspace .project-stage-tabs button {
    min-width: 0;
    min-height: 44px !important;
    white-space: normal !important;
  }
  .projects-workspace .project-list-toolbar { grid-template-columns: minmax(0, 1fr) auto !important; }
  .projects-workspace .project-list-toolbar > input { grid-column: 1 / -1 !important; }
  .projects-workspace .card-head { display: flex !important; flex-wrap: wrap; }
  .projects-workspace .doc-buttons > button { flex: 1 1 42%; min-width: 0; }
}
/* Compatibility with the currently deployed Projects DOM. */
.projects-workspace:has(> button) {
  display: grid !important;
  grid-template-columns: max-content max-content minmax(0, 1fr);
  grid-template-rows: auto auto minmax(0, 1fr);
  align-content: stretch;
}
.projects-workspace:has(> button) > .project-layout-header {
  grid-column: 1 / -1;
  grid-row: 1;
}
.projects-workspace:has(> button) > button {
  grid-row: 2;
  width: auto !important;
  min-height: 38px !important;
  padding: 8px 14px !important;
  font-size: 13px !important;
  border-color: #b8cbd5;
  color: #007b99;
}
.projects-workspace:has(> button) > button:first-child { grid-column: 1; }
.projects-workspace:has(> button) > button:nth-child(2) { grid-column: 2; }
.projects-workspace:has(> button) > .project-layout-sync {
  grid-column: 3;
  grid-row: 2;
  justify-self: end;
}
.projects-workspace:has(> button) > .project-layout-sync[open] {
  grid-column: 1 / -1;
  grid-row: auto;
  justify-self: stretch;
}
.projects-workspace:has(> button) > .projects-workspace-panel {
  grid-column: 1 / -1;
  grid-row: auto;
  min-height: 0;
}
.projects-workspace:has(> button) > .notice { grid-column: 1 / -1; }
@media (max-width: 850px) {
  .projects-workspace:has(> button) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: auto auto auto minmax(0, 1fr);
  }
  .projects-workspace:has(> button) > button {
    min-width: 0;
    min-height: 44px !important;
    padding: 6px !important;
    white-space: normal;
  }
  .projects-workspace:has(> button) > .project-layout-sync {
    grid-column: 1 / -1;
    grid-row: 3;
    justify-self: start;
  }
}
/* Keep global modal rules out of project list cards. */
.projects-workspace.projects-workspace .cards-grid > article.panel {
  border: 1px solid #cbd5e1 !important;
  border-radius: 10px !important;
  padding: 12px !important;
  min-height: 0 !important;
  height: auto !important;
  overflow: visible !important;
  box-shadow: none !important;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.projects-workspace.projects-workspace .cards-grid > article.panel > .modal-actions {
  position: static !important;
  inset: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 6px;
}
.projects-workspace.projects-workspace .cards-grid .card-head,
.projects-workspace.projects-workspace .cards-grid .project-summary,
.projects-workspace.projects-workspace .cards-grid .policy-grid,
.projects-workspace.projects-workspace .cards-grid .doc-buttons,
.projects-workspace.projects-workspace .cards-grid .project-archive {
  margin: 0 !important;
  min-height: 0 !important;
}
.projects-workspace.projects-workspace .cards-grid .card-head p { margin: 3px 0; }
.projects-workspace.projects-workspace .cards-grid .policy-grid { gap: 8px; }
.projects-workspace.projects-workspace .cards-grid .project-summary { padding: 6px 8px; }
.projects-workspace.projects-workspace .cards-grid .modal-actions button {
  min-height: 36px;
  padding: 6px 10px;
  font-size: 12px !important;
}
.projects-workspace.projects-workspace .project-layout-header > button {
  min-height: 38px;
  background: #f47719 !important;
  border-color: #f47719 !important;
}
@media (max-width: 700px) {
  .projects-workspace.projects-workspace .project-stage-tabs {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .projects-workspace.projects-workspace .project-stage-tabs button {
    font-size: 10px !important;
    line-height: 1.25 !important;
    padding: 5px 2px !important;
    overflow-wrap: anywhere;
  }
  .projects-workspace.projects-workspace .cards-grid > article.panel > .modal-actions button {
    flex: 1 1 42%;
    min-width: 0;
    min-height: 44px;
    white-space: normal;
  }
  .projects-workspace.projects-workspace .cards-grid .card-head {
    position: static !important;
    min-height: 0 !important;
  }
}
