/* Список проектов, форма создания, корпуса, секции и окна раздела. */
#componentProject #componentProjects > .project-form-layout__container,
#componentProject #componentProjectNew > .project-form-layout__container {
  width: 100%;
  margin: 0 auto;
  background: rgba(247, 241, 236, 0.06);
  border-radius: 1.332vh;
  padding: 2.22vh;
  position: relative;
  border: 0;
  outline: var(--app-border-width) solid rgba(247, 241, 236, 0.08);
  outline-offset: calc(-1 * var(--app-border-width));
}

.project-form-layout__header {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 7.992vh;
}

#componentProject #componentProjectNew .project-form-layout__title {
  width: 76.146vh;
  font-size: 2.22vh;
  font-weight: 700;
  line-height: 2.664vh;
  color: #D0D0D1;
  text-transform: uppercase;
  position: absolute;
  top: 0;
  left: 0;
}

/* ID в шапке формы проекта временно скрыт, узел и запись id остаются */
#componentProject #project-form-id-display {
  display: none;
}

.project-form-layout__close-btn {
  font-size: 2.5vh;
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 0;
  height: 2.664vh;
  width: 2.664vh;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'><path d='M18 6L6 18' stroke='%23D0D0D1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/><path d='M6 6L18 18' stroke='%23D0D0D1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  background-position: center;
  background-size: cover;
}

#componentProjectNew .project-form-layout__scroll {
  width: 121.212vh;
  position: relative;
  height: 66.372vh;
  margin-top: -1vh;
  display: flex;
  flex-direction: column;
  overflow-x: hidden;
  overflow-y: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.project-form-layout__field-label {
  font-size: 1.332vh;
  display: block;
  margin-bottom: 0.444vh;
  color: #7B8087;
}

.project-form-layout__field-wrap .project-form-layout__field-label {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.2s, visibility 0.2s;
}

.project-form-layout__field-wrap:focus-within .project-form-layout__field-label,
.project-form-layout__field-wrap.has-value .project-form-layout__field-label {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

#componentProject #componentProjectNew .input-wrapper.component-projects-new-input-inner-2.validation-error,
#componentProject #componentProjectNew .project-form-layout__field-input.validation-error,
#componentProject #componentProjectNew .component-projects-new-form-input.validation-error,
#componentProject #componentProjectNew .custom-select-trigger.validation-error {
  outline: none;
  box-shadow: inset 0 0 0 var(--app-border-width) var(--app-color-error);
}

#componentProject #componentProjectNew .new-project-overlay-wrapper {
  width: 125.652vh;
  height: 79.136vh;
  margin: 0 auto;
  background: #141720;
  border-radius: 1.332vh;
  padding: 2.22vh 2.22vh 3.552vh;
  position: relative;
  border: 0;
  animation: project-form-slide-in 0.4s ease;
}

@keyframes project-form-slide-in {
  from {
    transform: translateY(100vh);
  }
  to {
    transform: translateY(0);
  }
}

#componentProject #componentProjectNew.project-form-layout--closing {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}

#componentProject #componentProjectNew.project-form-layout--closing > .project-form-layout__container {
  background: transparent;
  outline: none;
}

#componentProject #componentProjectNew.project-form-layout--closing .app-header {
  visibility: hidden;
}

#componentProject #componentProjectNew.project-form-layout--closing .new-project-overlay-wrapper {
  animation: project-form-slide-out 0.4s ease forwards;
}

@keyframes project-form-slide-out {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(100vh);
  }
}

.comp-project-new-project-custom-select-options {
  position: absolute;
  top: 100%;
  left: -0.888vh;
  margin-top: 0;
  z-index: 1000;
  display: none;
  width: 21.312vh;
  height: 23.088vh;
  box-shadow: 0.444vh 0 0.444vh rgba(0, 0, 0, 0.25);
  padding: 0;
  overflow: hidden;
}

.comp-project-new-project-custom-select-options.open {
  display: block;
}

.comp-project-new-project-custom-select-options-scroll {
  width: 100%;
  height: 100%;
  overflow-y: auto;
  overflow-x: hidden;
  padding: var(--shared-dropdown-menu-padding);
  box-sizing: border-box;
}

.comp-project-new-project-custom-select-options-scroll::-webkit-scrollbar {
  display: none;
}

.comp-project-new-project-custom-option {
  width: 56.91vh;
  height: 4.44vh;
  line-height: 4.44vh;
  font-size: 1.554vh;
  padding-left: 1.332vh;
  box-sizing: border-box;
  color: #D0D0D1;
  cursor: pointer;
  white-space: nowrap;
  border-radius: 0.666vh;
  transition: background-color 0.2s;
}

#componentProject #componentProjectNew .component-projects-new-new-card,
#componentProject #componentProjectNew .component-projects-new-building-new-section,
#componentProject #componentProjectNew .component-projects-new-building-line {
  background: rgba(247, 241, 236, 0.06);
  outline: var(--app-border-width) solid rgba(247, 241, 236, 0.08);
  outline-offset: calc(-1 * var(--app-border-width));
}

#componentProject #componentProjectNew .component-projects-new-new-card-title {
  font-weight: 500;
  color: #A8A29E;
}

#componentProject #componentProjectNew .active > .component-projects-new-new-card-title {
  color: #DCA028;
}

#componentProject #componentProjectNew .completed > .component-projects-new-new-card-title {
  color: #2ECC71;
}

#componentProject #componentProjectNew .component-projects-new-vertical-line,
#componentProject #componentProjectNew .component-projects-new-vertical-secline {
  background: #DCA028;
}

#componentProject #componentProjectNew .completed > .component-projects-new-vertical-line,
#componentProject #componentProjectNew .completed > .component-projects-new-vertical-secline {
  background: #2ECC71;
}

#componentProject #componentProjectNew .proj-step-indicator path,
#componentProject #componentProjectNew .proj-step-indicator circle {
  stroke: #A8A29E;
}

#componentProject #componentProjectNew .active > .proj-step-indicator path,
#componentProject #componentProjectNew .active > .proj-step-indicator circle {
  stroke: #DCA028;
}

#componentProject #componentProjectNew .active > .proj-step-indicator circle + circle {
  fill: #DCA028;
}

#componentProject #componentProjectNew .completed > .proj-step-indicator path,
#componentProject #componentProjectNew .completed > .proj-step-indicator circle {
  stroke: #2ECC71;
}

#componentProject #componentProjectNew .completed > .proj-step-indicator circle + circle {
  fill: #2ECC71;
}

#componentProject #componentProjectNew .component-projects-new-image {
  /* Квадрат от верха первой плашки до низа третьей, справа тот же зазор, что между полями */
  left: 5.16vh;
  top: 6.945vh;
  width: 19.536vh;
  height: 19.536vh;
  border-radius: 1.465vh;
  background-color: rgba(247, 241, 236, 0.06);
  outline: var(--app-border-width) solid rgba(247, 241, 236, 0.08);
  outline-offset: -0.122vh;
}

#componentProject #componentProjectNew .component-projects-new-form-input,
#componentProject #componentProjectNew .custom-select-trigger {
  font-family: inherit;
  color: #D0D0D1;
}

#componentProject #componentProjectNew .component-projects-new-form-input {
  padding: 0.888vh 1.332vh;
  line-height: 2.664vh;
}

#componentProject #componentProjectNew .input-with-search-icon .component-projects-new-form-input {
  padding-right: 5.55vh;
}

#componentProject #componentProjectNew .input-wrapper,
#componentProject #componentProjectNew .component-projects-new-form-input,
#componentProject #componentProjectNew .component-projects-new-building-new-section-input-div-0:not(.project-form-layout__field-wrap),
#componentProject #componentProjectNew .component-projects-new-building-new-section-x {
  background: rgba(247, 241, 236, 0.06);
  border-radius: 0.666vh;
}

#componentProject #componentProjectNew .input-wrapper,
#componentProject #componentProjectNew .component-projects-new-building-new-section-input-div-0:not(.project-form-layout__field-wrap),
#componentProject #componentProjectNew .component-projects-new-building-new-section-x {
  outline: var(--app-border-width) solid rgba(247, 241, 236, 0.08);
  outline-offset: calc(-1 * var(--app-border-width));
}

#componentProject #componentProjectNew .input-wrapper .component-projects-new-form-input {
  background: transparent;
}

#componentProject #componentProjectNew .component-projects-new-form-input::placeholder {
  color: #7B8087;
  opacity: 1;
}

#componentProject #componentProjectNew .input-wrapper:focus-within {
  outline-color: #DCA028;
}

#componentProject #componentProjectNew .project-form-layout__field-wrap:not(.has-value) #componentProjectNewProjectDropdownBuildingTypeText {
  color: #7B8087;
}

#componentProject #componentProjectNew .project-form-layout__field-wrap.has-value #componentProjectNewProjectDropdownBuildingTypeText {
  color: #D0D0D1;
}

#componentProject #componentProjectNew .component-projects-new-new-section-title-0,
#componentProject #componentProjectNew .component-projects-new-new-section-title-1,
#componentProject #componentProjectNew .component-projects-new-scontainer-title-1,
#componentProject #componentProjectNew .component-projects-new-scontainer-title-2 {
  color: #7B8087;
  font-weight: 500;
}

#componentProject #componentProjectNew .component-projects-new-scontainer-button,
#componentProject #componentProjectNew .ccomponent-projects-new-scontainer-scrollbutton {
  background-color: rgba(247, 241, 236, 0.06);
  border: var(--app-border-width) solid transparent;
  color: #A8A29E;
}

#componentProject #componentProjectNew .component-projects-new-new-section-navButton0,
#componentProject #componentProjectNew .component-projects-new-new-section-navButton1 {
  background-color: rgba(247, 241, 236, 0.06);
  border: 0;
  color: #7B8087;
  font-weight: 500;
}

#componentProject #componentProjectNew .component-projects-new-new-section-navButton0.active,
#componentProject #componentProjectNew .component-projects-new-new-section-navButton1.active {
  outline: var(--app-border-width) solid #DCA028;
  outline-offset: -0.0555vh;
  color: #D0D0D1;
  font-weight: 500;
}

#componentProject #componentProjectNew .component-projects-new-scontainer-button.active {
  border-color: #DCA028;
  color: #D0D0D1;
  font-weight: 500;
}

#componentProject #componentProjectNew #proj-sections-count-display {
  color: #DCA028;
  font-weight: 500;
}

#componentProject #componentProjectNew .component-projects-new-scontainer-item {
  width: 37.629vh;
  background: rgba(20, 23, 32, 0.68);
}

#componentProject #componentProjectNew .component-projects-new-scontainer-title-0 {
  color: #D0D0D1;
  font-weight: 700;
}

#componentProject #componentProjectNew .component-projects-new-scontainer-button {
  width: 4.662vh;
  font-size: 1.554vh;
  font-weight: 700;
  line-height: 2.664vh;
}

#componentProject #componentProjectNew .component-projects-new-scontainer-input-div-1,
#componentProject #componentProjectNew .component-projects-new-scontainer-input-div-3 {
  width: 17.316vh;
}

#componentProject #componentProjectNew .component-projects-new-scontainer-input-div-4.project-form-layout__field-wrap {
  width: 34.965vh;
}

#componentProject #componentProjectNew .component-projects-new-scontainer-button:hover,
#componentProject #componentProjectNew .ccomponent-projects-new-scontainer-scrollbutton:hover,
#componentProject #componentProjectNew .component-projects-new-new-section-navButton0:hover,
#componentProject #componentProjectNew .component-projects-new-new-section-navButton1:hover {
  background-color: rgba(247, 241, 236, 0.1);
  color: #D0D0D1;
}

#componentProject #componentProjectNew .comp-project-new-project-dropdown-building-type-menu,
#componentProject #componentProjectNew .comp-project-new-project-custom-select-options {
  background: #20232B;
  border: var(--app-border-width) solid rgba(247, 241, 236, 0.08);
  border-radius: 1.332vh;
}

#componentProject #componentProjectNew .comp-project-new-project-dropdown-building-type-item:hover,
#componentProject #componentProjectNew .comp-project-new-project-custom-option:hover {
  background: rgba(247, 241, 236, 0.06);
}

#componentProject #componentProjectNew .comp-project-new-project-dropdown-building-type-item.selected,
#componentProject #componentProjectNew .comp-project-new-project-custom-option.selected {
  background: rgba(247, 241, 236, 0.1);
  color: #DCA028;
}

#componentProjectNew #componentProjectsButtonAdd {
  padding: 1.332vh;
  line-height: 2.664vh;
  background: rgba(247, 241, 236, 0.06);
  color: #D0D0D1;
  border: 0;
  border-radius: 5.328vh;
  outline: var(--app-border-width) solid #2ECC71;
  outline-offset: calc(-1 * var(--app-border-width));
}

#componentProjectNew #componentProjectsButtonAdd.disabled {
  background: rgba(247, 241, 236, 0.06);
  color: #A8A29E;
  outline-color: rgba(247, 241, 236, 0.08);
}

#componentProjectNew #componentProjectsButtonAdd:not(.disabled):hover {
  background: rgba(46, 204, 113, 0.12);
}

#componentProject #componentProjects,
#componentProject #componentProjectNew {
  font-family: Inter, sans-serif;
  color: #D0D0D1;
}

#componentProject :is(#componentProjects, #componentProjectNew) .app-header {
  width: 125.652vh;
}

#componentProject :is(#componentProjects, #componentProjectNew) .app-header-search-container {
  height: 5.328vh;
  padding: 0 2.22vh;
  gap: 1.11vh;
  background: rgba(247, 241, 236, 0.06);
  outline: var(--app-border-width) solid rgba(247, 241, 236, 0.08);
  outline-offset: calc(-1 * var(--app-border-width));
  transition: outline-color 0.2s, background-color 0.2s;
}

#componentProject :is(#componentProjects, #componentProjectNew) .app-header-search-container:hover,
#componentProject :is(#componentProjects, #componentProjectNew) .app-header-search-container:focus-within {
  outline-color: #DCA028;
}

#componentProject :is(#componentProjects, #componentProjectNew) .app-header-search-input {
  width: 49.95vh;
  min-width: 0;
  height: 5.328vh;
  padding: 0;
  font-family: inherit;
  color: #D0D0D1;
  caret-color: #D0D0D1;
}

#componentProject :is(#componentProjects, #componentProjectNew) .app-header-search-input::placeholder {
  color: #D0D0D1;
  opacity: 1;
}

#componentProject :is(#componentProjects, #componentProjectNew) .app-header-search-container .comp-project-new-project-icon-search,
#componentProject :is(#componentProjects, #componentProjectNew) .projects-search-clear {
  margin: 0;
}

#componentProject :is(#componentProjects, #componentProjectNew) .btn-constructor-action {
  min-height: 4.44vh;
  background: rgba(247, 241, 236, 0.06);
  border-radius: 0.666vh;
  transition: background-color 0.2s;
}

#componentProject :is(#componentProjects, #componentProjectNew) .btn-constructor-action:hover {
  transform: none;
  background: rgba(247, 241, 236, 0.1);
}

#componentProject :is(#componentProjects, #componentProjectNew) .btn-constructor-action span {
  color: #D0D0D1;
}

#componentProject :is(#componentProjects, #componentProjectNew) .btn-constructor-action path {
  fill: #D0D0D1;
}

#componentProject #componentProjectNew .btn-circle-action {
  cursor: default;
  pointer-events: none;
}

#componentProject :is(#componentProjects, #componentProjectNew) .projects-grid-area,
#componentProject :is(#componentProjects, #componentProjectNew) #projects-grid {
  width: 125.652vh;
}

#componentProject :is(#componentProjects, #componentProjectNew) #projects-grid {
  grid-template-columns: repeat(4, 30.414vh);
  align-content: start;
}

#componentProject :is(#componentProjects, #componentProjectNew) .project-card {
  border: 0;
  background: transparent;
  outline: var(--app-border-width) solid transparent;
  outline-offset: calc(-1 * var(--app-border-width));
  transition: outline-color 0.2s;
}


#componentProject :is(#componentProjects, #componentProjectNew) .project-img-wrapper {
  flex-shrink: 0;
  background-color: rgba(247, 241, 236, 0.06);
}

#componentProject :is(#componentProjects, #componentProjectNew) .project-img-wrapper::after {
  background: rgba(20, 23, 32, 0.4);
}

#componentProject :is(#componentProjects, #componentProjectNew) .project-card-constructor {
  margin-top: 1.332vh;
  font-family: inherit;
  color: #F7F1EC;
}

#componentProject :is(#componentProjects, #componentProjectNew) .project-card-constructor--filled {
  color: #F2A40E;
}

#componentProject :is(#componentProjects, #componentProjectNew) .project-card-constructor:focus-visible,
#componentProject :is(#componentProjects, #componentProjectNew) .comp-project-icon-dots:focus-visible {
  outline: var(--app-border-width) solid #DCA028;
  outline-offset: -0.333vh;
  border-radius: 0.666vh;
}

#componentProject :is(#componentProjects, #componentProjectNew) .project-content {
  padding: 0.888vh 1.332vh;
  background: rgba(20, 23, 32, 0.68);
}

#componentProject :is(#componentProjects, #componentProjectNew) .project-title {
  width: 24.198vh;
  color: #F7F1EC;
  white-space: nowrap;
  text-overflow: ellipsis;
}

#componentProject :is(#componentProjects, #componentProjectNew) .project-address {
  width: 25.086vh;
  color: #7B8087;
  white-space: nowrap;
  text-overflow: ellipsis;
}

#componentProject :is(#componentProjects, #componentProjectNew) .add-new-card-project {
  background: rgba(20, 23, 32, 0.68);
}

#componentProject :is(#componentProjects, #componentProjectNew) .add-new-card-project .add-card-text-wrapper {
  background: rgba(247, 241, 236, 0.06);
  border: var(--app-border-width) solid #DCA028;
}

#componentProject :is(#componentProjects, #componentProjectNew) .add-new-card-project .add-card-text-sub {
  color: #A8A29E;
}

.component-projects-new-building-new-section-input-div-0 {
  position: absolute;
  left: 4.44vh;
  top: 5.328vh;
  width: 28.86vh;
  border-radius: 0.666vh;
  overflow: hidden;
}

.component-projects-new-building-new-section-input-div-0.project-form-layout__field-wrap {
  top: 5.328vh;
  height: 6.66vh;
  width: 28.86vh;
  display: flex;
  flex-direction: column;
  gap: 0.444vh;
  background: transparent;
  overflow: visible;
}

.component-projects-new-building-new-section-input-div-0.project-form-layout__field-wrap .project-form-layout__field-label {
  margin: 0 0 0.444vh 0;
  flex-shrink: 0;
}

.component-projects-new-building-new-section-input-div-0 .input-wrapper.component-projects-new-building-new-section-input-inner-0 {
  position: relative;
  width: 100%;
  height: 4.44vh;
  flex-shrink: 0;
  border-radius: 0.666vh;
  overflow: hidden;
}

.app-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: transparent;
  padding: 0;
  margin-bottom: 2.22vh;
  width: 130.092vh;
  height: 5.328vh;
}

.app-header-search-container {
  width: 59.94vh;
  position: absolute;
  height: 5.327vh;
  left: 2.22vh;
  top: 2.22vh;
  border-radius: 0.888vh;
  display: flex;
  align-items: center;
  padding: 0.444vh 2.22vh;
}

.app-header-search-container .comp-project-new-project-icon-search {
  position: relative;
  top: auto;
  right: auto;
  width: 4.44vh;
  height: 4.44vh;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-left: 2.22vh;
  margin-top: 0.444vh;
  margin-bottom: 0.444vh;
}

.projects-search-clear {
  position: relative;
  top: auto;
  right: auto;
  width: 4.44vh;
  height: 4.44vh;
  display: none;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-left: 2.22vh;
  margin-top: 0.444vh;
  margin-bottom: 0.444vh;
  cursor: pointer;
}

#projects-search-input {
  flex-grow: 1;
  background: transparent;
  border: none;
  border-bottom: none;
  box-shadow: none;
  font-size: 1.554vh;
  font-weight: 500;
  outline: none;
  line-height: 2.664vh;
  letter-spacing: 0vh;
  text-decoration: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

#projects-search-input:focus {
  border: none;
  border-bottom: none;
  box-shadow: none;
  outline: none;
}

.btn-circle-action {
  position: absolute;
  width: 8.88vh;
  height: 5.328vh;
  right: 0;
  top: 2.22vh;
  cursor: pointer;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='80' height='48' viewBox='0 0 80 48' fill='none'><path d='M0 24C0 10.7452 10.7452 0 24 0H80V48H24C10.7452 48 0 37.2548 0 24Z' fill='%236F82BF'/><path d='M28 39C36.2843 39 43 32.2843 43 24C43 15.7157 36.2843 9 28 9C19.7157 9 13 15.7157 13 24C13.0091 32.2805 19.7195 38.9909 28 39ZM40 24.258C39.929 30.8599 34.5383 36.1643 27.9362 36.129C21.334 36.0933 16.0007 30.7312 16.0007 24.129C16.0007 17.5268 21.334 12.1647 27.9362 12.129C34.5383 12.0937 39.929 17.3981 40 24V24.258ZM26.5 31.5H29.5V25.5H35.5V22.5H29.5V16.5H26.5V22.5H20.5V25.5H26.5V31.5Z' fill='white'/></svg>");
  background-position: center;
  background-size: cover;
}

.btn-circle-action.btn-orange {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='80' height='48' viewBox='0 0 80 48' fill='none'><path d='M0 24C0 10.7452 10.7452 0 24 0H80V48H24C10.7452 48 0 37.2548 0 24Z' fill='%236F82BF'/><path d='M28 39C36.2843 39 43 32.2843 43 24C43 15.7157 36.2843 9 28 9C19.7157 9 13 15.7157 13 24C13.0091 32.2805 19.7195 38.9909 28 39ZM40 24.258C39.929 30.8599 34.5383 36.1643 27.9362 36.129C21.334 36.0933 16.0007 30.7312 16.0007 24.129C16.0007 17.5268 21.334 12.1647 27.9362 12.129C34.5383 12.0937 39.929 17.3981 40 24V24.258ZM26.5 31.5H29.5V25.5H35.5V22.5H29.5V16.5H26.5V22.5H20.5V25.5H26.5V31.5Z' fill='white'/></svg>");
}

.grid-container {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(30.414vh, 30.414vh));
  gap: 1.332vh;
  width: 100%;
}

.project-card {
  border-radius: 1.332vh;
  overflow: hidden;
  cursor: pointer;
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 0;
  height: 23.976vh;
  width: 30.414vh;
}

.project-img-wrapper {
  width: 100%;
  height: 17.316vh;
  position: relative;
}

.project-img-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.project-img-wrapper::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
}

.project-card-constructor {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.332vh;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  z-index: 2;
}

.project-card-constructor__icon {
  width: 5.328vh;
  height: 5.328vh;
  display: block;
  flex-shrink: 0;
}

.project-card-constructor span {
  color: currentColor;
  font-size: 1.776vh;
  font-weight: 700;
  line-height: 2.22vh;
  text-transform: uppercase;
  text-align: center;
}

.project-card-constructor:hover {
  filter: brightness(1.08);
}

.project-content {
  height: 6.66vh;
  position: relative;
}

.project-title {
  font-weight: 700;
  font-size: 1.776vh;
  position: absolute;
  top: 0.888vh;
  left: 1.332vh;
  line-height: 2.664vh;
  height: 2.664vh;
  width: 26.418vh;
  overflow:hidden;
  text-align: left;
}

.project-address {
  font-weight: 500;
  font-size: 1.332vh;
  line-height: 1.776vh;
  position: absolute;
  bottom: 0.888vh;
  left: 3.996vh;
  height: 1.776vh;
  width: 26.418vh;
  overflow:hidden;
  text-align: left;
}

.comp-project-icon-map {
  position: absolute;
  left: 1.332vh;
  bottom: 0.888vh;
  width: 1.776vh;
  height: 1.776vh;
  box-sizing: border-box;
  background-image: url('../componentProject/comp-project-icon-map.svg');
  background-position: center;
  background-size: cover;
}

.comp-project-card-dots-wrap {
  position: absolute;
  right: 1.332vh;
  top: 0.888vh;
  width: 2.664vh;
  height: 2.664vh;
  cursor: pointer;
  z-index: 10;
}

.comp-project-icon-dots {
  position: absolute;
  right: 0;
  top: 0;
  width: 2.664vh;
  height: 2.664vh;
  box-sizing: border-box;
  background-image: url('../componentProject/comp-project-icon-dots.svg');
  background-position: center;
  background-size: cover;
  cursor: pointer;
}

#projects-grid {
  height: 81.8vh;
  overflow-y: auto;
  width: 127.7vh;
  padding-bottom: 2.22vh;
  grid-auto-rows: 23.976vh;
  gap: 2.22vh 1.332vh;
}

.add-new-card-project {
  height: 23.976vh;
  width: 30.414vh;
  overflow: hidden;
  cursor: default;
}

.add-new-card-project .add-card-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-grow: 1;
}

.add-new-card-project .add-card-text-wrapper {
  border-radius: 0 0 1.332vh 1.332vh;
  padding: 0.888vh 1.332vh;
  width: 100%;
  box-sizing: border-box;
  cursor: pointer;
}

.add-new-card-project .add-card-text-line {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.444vh;
  font-size: 1.776vh;
  font-weight: 700;
  color: #FFFFFF;
  margin-bottom: 0.444vh;
}

.add-new-card-project .add-card-text-sub {
  font-size: 1.332vh;
  font-weight: 500;
  text-align: center;
  line-height: 1.776vh;
}

#componentProjectsButtonAdd {
  width: 26.64vh;
  height: 5.328vh;
  line-height: 5.328vh;
  text-align: center;
  border-radius: 0.666vh;
  cursor: pointer;
  margin: 0vh 0vh 0vh auto;
  font-weight: 700;
  font-size: 1.776vh;
  transition: background-color 0.3s, opacity 0.3s;
}

#componentProjectsButtonAdd.disabled {
  cursor: pointer;
}

.component-projects-new-container {
  width: 100%;
  height: auto;
  position: relative;
  margin: 0 auto;
  box-sizing: border-box;
}

.component-projects-new-new-card,
.component-projects-new-building-new-section {
  width: 121.212vh;
  border-radius: 1.332vh;
  position: relative;
  box-sizing: border-box;
  margin-bottom: 1.332vh;
  transition: height 0.4s ease, border-color 0.3s;
}

.component-projects-new-new-card.collapsed {
  height: 5.328vh;
}

.component-projects-new-new-card.active {
  height: 28.413vh;
}

.component-projects-new-building-new-section.collapsed {
  height: 5.328vh;
}

.component-projects-new-building-new-section.active {
  height: 74.14vh;
}

.proj-collapsed-hidden {
  transition: opacity 0.2s;
}

.collapsed .proj-collapsed-hidden {
  opacity: 0;
  pointer-events: none;
}

.component-projects-new-building-line {
  width: 121.212vh;
  height: 5.328vh;
  line-height: 5.328vh;
  border-radius: 1.332vh;
  position: relative;
  box-sizing: border-box;
  margin-bottom: 1.332vh;
  font-size: 1.554vh;
  font-weight: 700;
  display: flex;
  align-items: center;
}

.component-projects-new-new-section-title-0,
.component-projects-new-new-section-title-1 {
  position: absolute;
  left: 4.44vh;
  width: 18.762vh;
  height: 3.552vh;
  line-height: 3.552vh;
  font-size: 1.554vh;
  border-width: 0;
  box-sizing: border-box;
}

.component-projects-new-new-section-title-0 {
  top: 13.32vh;
}

.component-projects-new-new-section-title-1 {
  top: 22.198vh;
}

.component-projects-new-new-section-navButton0,
.component-projects-new-new-section-navButton1 {
  position: absolute;
  top: 17.314vh;
  width: 13.986vh;
  height: 3.552vh;
  padding: 0.444vh 0.888vh;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.888vh;
  line-height: 1.998vh;
  font-size: 1.554vh;
  font-weight: 500;
  box-sizing: border-box;
  text-align: center;
  cursor: pointer;
  border: 0;
  border-radius: 0.666vh;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.component-projects-new-new-section-navButton0 {
  left: 4.44vh;
}

.component-projects-new-new-section-navButton1 {
  left: 21.314vh;
}

.component-projects-new-new-section-navButton0.active,
.component-projects-new-new-section-navButton1.active {
  cursor: default;
}

.component-projects-new-scontainer {
  position: absolute;
  top: 30.633vh;
  left: 4.44vh;
  width: 115.912vh;
  height: 42.175vh;
  overflow-x: auto;
  overflow-y: hidden;
  display: flex;
  flex-direction: row;
  gap: 1.332vh;
}

.component-projects-new-scontainer-item {
  position: relative;
  width: 37.625vh;
  height: 42.175vh;
  border-radius: 1.332vh;
  flex: 0 0 auto;
}

.component-projects-new-scontainer-title-0 {
  position: absolute;
  left: 1.332vh;
  top: 1.332vh;
  width: 33.3vh;
  height: 2.664vh;
  line-height: 2.664vh;
  font-size: 1.776vh;
}

.component-projects-new-scontainer-title-1 {
  position: absolute;
  left: 1.332vh;
  top: 11vh;
  width: 33.3vh;
  height: 2.664vh;
  line-height: 2.664vh;
  font-size: 1.554vh;
}

.component-projects-new-scontainer-title-2 {
  position: absolute;
  left: 1.332vh;
  top: 22.5vh;
  width: 33.3vh;
  height: 2.664vh;
  line-height: 2.664vh;
  font-size: 1.554vh;
}

.component-projects-new-scontainer-buttons-container {
  position: absolute;
  left: 1.332vh;
  top: 6.215vh;
  right: 6.5vh;
  width: 30.5vh;
  gap: 0.444vh;
  display: flex;
  flex-direction: row;
  align-items: center;
  overflow-x: auto;
  overflow-y: hidden;
  white-space: nowrap;
  scroll-behavior: smooth;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.component-projects-new-scontainer-buttons-container::-webkit-scrollbar {
  display: none;
}

.component-projects-new-scontainer-button {
  flex: 0 0 auto;
  width: 4.661vh;
  height: 3.552vh;
  display: flex;
  align-items: center;
  border-radius: 0.666vh;
  cursor: pointer;
  transition: 0.2s ease all;
  padding-left: 0.888vh;
}

.ccomponent-projects-new-scontainer-scrollbutton {
  position: absolute;
  right: 1.332vh;
  top: 6.216vh;
  flex: 0 0 auto;
  width: 4.329vh;
  height: 3.552vh;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 0.666vh;
  cursor: pointer;
  z-index: 10;
}

.component-projects-new-scontainer-input-div-0 {
  position: absolute;
  left: 1.332vh;
  top: 15.096vh;
  width: 17.205vh;
  height: 4.44vh;
  border-radius: 0.666vh;
  overflow: hidden;
}

.component-projects-new-scontainer-item .component-projects-new-scontainer-input-div-0.project-form-layout__field-wrap,
.component-projects-new-scontainer-item .component-projects-new-scontainer-input-div-1.project-form-layout__field-wrap {
  top: 14.652vh;
  height: 6.66vh;
  display: flex;
  flex-direction: column;
  gap: 0.444vh;
  background: transparent;
  overflow: visible;
}

.component-projects-new-scontainer-item .component-projects-new-scontainer-input-div-0.project-form-layout__field-wrap .project-form-layout__field-label,
.component-projects-new-scontainer-item .component-projects-new-scontainer-input-div-1.project-form-layout__field-wrap .project-form-layout__field-label {
  margin: 0 0 0.444vh 0;
  flex-shrink: 0;
}

.component-projects-new-scontainer-item .component-projects-new-scontainer-input-div-0 .input-wrapper,
.component-projects-new-scontainer-item .component-projects-new-scontainer-input-div-1 .input-wrapper {
  position: relative;
  width: 100%;
  height: 4.44vh;
  flex-shrink: 0;
  border-radius: 0.666vh;
  overflow: hidden;
}

.component-projects-new-scontainer-input-div-1 {
  position: absolute;
  left: 18.981vh;
  top: 15.096vh;
  width: 17.205vh;
  height: 4.44vh;
  border-radius: 0.666vh;
  overflow: hidden;
}

.component-projects-new-scontainer-input-div-2 {
  position: absolute;
  left: 1.332vh;
  top: 29.301vh;
  width: 17.205vh;
  height: 4.44vh;
  border-radius: 0.666vh;
  overflow: hidden;
}

.component-projects-new-scontainer-item .component-projects-new-scontainer-input-div-2.project-form-layout__field-wrap,
.component-projects-new-scontainer-item .component-projects-new-scontainer-input-div-3.project-form-layout__field-wrap {
  top: 26.081vh;
  height: 6.66vh;
  display: flex;
  flex-direction: column;
  gap: 0.444vh;
  background: transparent;
  overflow: visible;
}

.component-projects-new-scontainer-item .component-projects-new-scontainer-input-div-2.project-form-layout__field-wrap .project-form-layout__field-label,
.component-projects-new-scontainer-item .component-projects-new-scontainer-input-div-3.project-form-layout__field-wrap .project-form-layout__field-label {
  margin: 0 0 0.444vh 0;
  flex-shrink: 0;
}

.component-projects-new-scontainer-item .component-projects-new-scontainer-input-div-2 .input-wrapper,
.component-projects-new-scontainer-item .component-projects-new-scontainer-input-div-3 .input-wrapper {
  position: relative;
  width: 100%;
  height: 4.44vh;
  flex-shrink: 0;
  border-radius: 0.666vh;
  overflow: hidden;
}

.component-projects-new-scontainer-input-div-3 {
  position: absolute;
  left: 18.981vh;
  top: 24.864vh;
  width: 17.205vh;
  height: 4.44vh;
  border-radius: 0.666vh;
  overflow: hidden;
}

.component-projects-new-scontainer-input-div-4 {
  position: absolute;
  left: 1.332vh;
  top: 29.748vh;
  width: 34.965vh;
  height: 4.44vh;
  border-radius: 0.666vh;
  overflow: hidden;
}

.component-projects-new-scontainer-item .component-projects-new-scontainer-input-div-4.project-form-layout__field-wrap {
  top: 34vh;
  height: 6.66vh;
  width: 34.961vh;
  display: flex;
  flex-direction: column;
  gap: 0.444vh;
  background: transparent;
  overflow: visible;
}

.component-projects-new-scontainer-item .component-projects-new-scontainer-input-div-4.project-form-layout__field-wrap .project-form-layout__field-label {
  margin: 0 0 0.444vh 0;
  flex-shrink: 0;
}

.component-projects-new-scontainer-item .component-projects-new-scontainer-input-div-4 .input-wrapper {
  position: relative;
  width: 100%;
  height: 4.44vh;
  flex-shrink: 0;
  border-radius: 0.666vh;
  overflow: hidden;
}

.component-projects-new-new-card-title {
  position: absolute;
  left: 4.44vh;
  top: 1.332vh;
  width: 33.3vh;
  height: 2.664vh;
  line-height: 2.664vh;
  font-size: 1.776vh;
  cursor: pointer;
  z-index: 10;
}

.component-projects-new-form-input {
  font-size: 1.554vh;
  border-width: 0;
  box-sizing: border-box;
  line-height: 4.44vh;
  width: 100%;
  padding-left: 1.332vh;
  font-weight: 500;
  height: 4.44vh;
}

.input-with-search-icon {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
}

.input-with-search-icon .component-projects-new-form-input {
  padding-right: 5.55vh;
}

.input-search-icon {
  position: absolute;
  right: 1.332vh;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.888vh 0;
}

.component-projects-new-input-div-0 {
  position: absolute;
  left: 27.084vh;
  top: 4.44vh;
  width: 91.578vh;
  height: 6.66vh;
  display: flex;
  flex-direction: column;
  gap: 0.444vh;
  background: transparent;
  overflow: visible;
}

.component-projects-new-input-div-0.project-form-layout__field-wrap .project-form-layout__field-label {
  margin: 0 0 0.444vh 0;
  flex-shrink: 0;
}

.component-projects-new-input-div-0 .input-wrapper.component-projects-new-input-inner-0 {
  position: relative;
  width: 100%;
  height: 4.44vh;
  flex-shrink: 0;
  border-radius: 0.666vh;
  overflow: hidden;
}

.component-projects-new-input-div-1 {
  position: absolute;
  left: 27.084vh;
  top: 14.208vh;
  width: 37.74vh;
  height: 4.44vh;
  border-radius: 0.666vh;
  overflow: hidden;
}

.component-projects-new-input-div-1.project-form-layout__field-wrap {
  top: 11.988vh;
  height: 6.66vh;
  display: flex;
  flex-direction: column;
  gap: 0.444vh;
  background: transparent;
  overflow: visible;
}

.component-projects-new-input-div-1.project-form-layout__field-wrap .project-form-layout__field-label {
  margin: 0 0 0.444vh 0;
  flex-shrink: 0;
}

.component-projects-new-input-div-1 .input-wrapper.component-projects-new-input-inner-1 {
  position: relative;
  width: 100%;
  height: 4.44vh;
  flex-shrink: 0;
  border-radius: 0.666vh;
  overflow: hidden;
}

.component-projects-new-input-div-2 {
  position: absolute;
  left: 65.712vh;
  top: 14.208vh;
  width: 52.95vh;
  height: 4.44vh;
  border-radius: 0.666vh;
}

.component-projects-new-input-div-2.project-form-layout__field-wrap {
  top: 11.988vh;
  height: 6.66vh;
  display: flex;
  flex-direction: column;
  gap: 0.444vh;
  background: transparent;
  overflow: visible;
}

.component-projects-new-input-div-2.project-form-layout__field-wrap .project-form-layout__field-label {
  margin: 0 0 0.444vh 0;
  flex-shrink: 0;
}

.component-projects-new-input-div-2 .input-wrapper.component-projects-new-input-inner-2 {
  position: relative;
  width: 100%;
  height: 4.44vh;
  flex-shrink: 0;
  border-radius: 0.666vh;
  overflow: visible;
}

.component-projects-new-input-div-3 {
  position: absolute;
  left: 27.084vh;
  top: 21.756vh;
  width: 61.265vh;
  height: 4.44vh;
  border-radius: 0.666vh;
  overflow: hidden;
}

.component-projects-new-input-div-3.project-form-layout__field-wrap {
  top: 19.536vh;
  height: 6.66vh;
  display: flex;
  flex-direction: column;
  gap: 0.444vh;
  background: transparent;
  overflow: visible;
}

.component-projects-new-input-div-3.project-form-layout__field-wrap .project-form-layout__field-label {
  margin: 0 0 0.444vh 0;
  flex-shrink: 0;
}

.component-projects-new-input-div-3 .input-wrapper.component-projects-new-input-inner-3 {
  position: relative;
  width: 100%;
  height: 4.44vh;
  flex-shrink: 0;
  border-radius: 0.666vh;
  overflow: hidden;
}

.component-projects-new-input-div-4 {
  position: absolute;
  left: 89.252vh;
  top: 21.756vh;
  width: 29.41vh;
  height: 4.44vh;
  border-radius: 0.666vh;
  overflow: hidden;
}

.component-projects-new-input-div-4.project-form-layout__field-wrap {
  top: 19.536vh;
  height: 6.66vh;
  display: flex;
  flex-direction: column;
  gap: 0.444vh;
  background: transparent;
  overflow: visible;
}

.component-projects-new-input-div-4.project-form-layout__field-wrap .project-form-layout__field-label {
  margin: 0 0 0.444vh 0;
  flex-shrink: 0;
}

.component-projects-new-input-div-4 .input-wrapper.component-projects-new-input-inner-4 {
  position: relative;
  width: 100%;
  height: 4.44vh;
  flex-shrink: 0;
  border-radius: 0.666vh;
  overflow: hidden;
}

.component-projects-new-image {
  position: absolute;
  left: 4.44vh;
  top: 7.325vh;
  width: 17.76vh;
  height: 17.76vh;
  border-radius: 1.332vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background-image: url('../componentProject/comp-project-icon-image.svg');
  background-size: 8.88vh;
  background-repeat: no-repeat;
  background-position: center;
}

.component-projects-new-vertical-line {
  position: absolute;
  left: 2.55vh;
  top: 3.996vh;
  width: 0.222vh;
  height: 23.085vh;
  display: none;
}

.component-projects-new-vertical-secline {
  position: absolute;
  left: 2.6vh;
  top: 3.996vh;
  width: 0.222vh;
  height: 68.82vh;
  display: none;
}

.active .component-projects-new-vertical-line,
.active .component-projects-new-vertical-secline {
  display: block;
}

.component-projects-new-building-new-section-x {
  position: absolute;
  left: 4.44vh;
  top: 25.749vh;
  width: 18.648vh;
  border-radius: 0.666vh;
  height: 3.552vh;
  line-height: 3.552vh;
  overflow: visible;
  font-size: 1.554vh;
  z-index: 20;
}

.comp-project-new-project-dropdown-building-type-wrapper {
  position: relative;
  width: 100%;
  height: 4.44vh;
  box-sizing: border-box;
}

.comp-project-new-project-dropdown-building-type-trigger {
  height: 4.44vh;
  display: flex;
  align-items: center;
  padding-left: 1.332vh;
  cursor: pointer;
  font-size: 1.554vh;
  position: relative;
}

#componentProjectNewProjectDropdownBuildingTypeText {
  font-weight: 500;
  font-size: 1.554vh;
}

.comp-project-new-project-dropdown-building-type-icon {
  position: absolute;
  width: 2.664vh;
  height: 2.664vh;
  top: 0.888vh;
  right: 1.332vh;
  pointer-events: none;
}

.comp-project-new-project-dropdown-building-type-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 100;
  width: 100%;
  height: 33.076vh;
  margin-top: 0.2vh;
  padding: var(--shared-dropdown-menu-padding);
  box-shadow: 0.444vh 0 0.444vh rgba(0,0,0,0.25);
  overflow: hidden;
}

.comp-project-new-project-dropdown-building-type-wrapper.open .comp-project-new-project-dropdown-building-type-menu {
  display: block;
}

.comp-project-new-project-dropdown-building-type-item {
  width: 100%;
  height: 4.44vh;
  line-height: 4.44vh;
  font-size: 1.554vh;
  padding-left: 1.332vh;
  box-sizing: border-box;
  color: #D0D0D1;
  cursor: pointer;
  white-space: nowrap;
  border-radius: 0.666vh;
  transition: background-color 0.2s;
}

.comp-project-new-project-dropdown-building-type-item--disabled {
  color: #6B6E72;
  cursor: default;
  pointer-events: none;
}

.comp-project-new-project-dropdown-building-type-item--disabled:hover {
  background-color: transparent;
}

#componentProjectDeleteValidationContainer,
#componentProjectCloseConfirmContainer {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  pointer-events: none;
  z-index: 10000;
}

#componentProjectDeleteValidationContainer.active,
#componentProjectCloseConfirmContainer.active {
  pointer-events: auto;
}

#componentProjectDeleteValidationContainer.active {
  background: rgba(0, 0, 0, 0.6);
}

#componentProjectCloseConfirmContainer.active {
  background: rgba(0, 0, 0, 0.3);
}

#componentProjectDeleteValidationContainer .shared-validation-popup,
#componentProjectCloseConfirmContainer .shared-validation-popup {
  pointer-events: auto;
}

#componentProjectRequiredFieldsPopup,
#componentProjectConstructorFilledPopup {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: 0;
}

.btn-constructor-action {
  display: flex;
  align-items: center;
  gap: 0.888vh;
  cursor: pointer;
  border-radius: 0.666vh;
  padding: 0.888vh 1.332vh;
  position: absolute;
  left: 82.806vh;
}

.btn-constructor-action span {
  font-size: 1.776vh;
  text-transform: uppercase;
  font-weight: 700;
  line-height: 2.22vh;
}

#componentProjects {
  position: relative;
}

#componentProjects .project-form-layout__container {
  min-height: 100%;
}

.projects-grid-area {
  position: relative;
  width: 127.7vh;
  height: 81.8vh;
}

.projects-grid-area #projects-grid {
  height: 100%;
  width: 100%;
}

.projects-constructor-hint-overlay {
  position: fixed;
  inset: 0;
  z-index: 9997;
  display: flex;
  visibility: hidden;
  pointer-events: none;
  overflow: hidden;
  transition: visibility 0s 0.5s;
  align-items: center;
  justify-content: center;
}

.projects-constructor-hint-overlay::before {
  content: "";
  position: absolute;
  inset: 0;
  background: #13161B66;
  opacity: 0;
  transition: opacity 0.5s ease;
  will-change: opacity;
  pointer-events: none;
}

.projects-constructor-hint-overlay.active {
  visibility: visible;
  pointer-events: auto;
  transition: visibility 0s;
}

.projects-constructor-hint-overlay.active::before {
  opacity: 1;
}

.projects-constructor-hint-popup {
  position: relative;
  z-index: 1;
  width: 46.62vh;
  height: 65.046vh;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  box-sizing: border-box;
  background: rgba(20, 23, 32, 0.68);
  border-radius: 1.776vh;
  overflow: hidden;
  font-family: Inter, sans-serif;
  transform: translate3d(0, 100vh, 0);
  transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  will-change: transform;
  backface-visibility: hidden;
}

.projects-constructor-hint-overlay.active .projects-constructor-hint-popup {
  transform: translate3d(0, 0, 0);
}

.projects-constructor-hint-popup__container {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
}

.projects-constructor-hint-popup__header {
  width: 46.62vh;
  height: 17.76vh;
  padding: 2.664vh;
  box-sizing: border-box;
  flex-shrink: 0;
  border-radius: 1.776vh 1.776vh 0 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 2.664vh;
}

.projects-constructor-hint-popup__header-top {
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.332vh;
}

.projects-constructor-hint-popup__title {
  display: flex;
  align-items: center;
  gap: 1.332vh;
}

.projects-constructor-hint-popup__title .projects-constructor-hint-popup__tit1 {
  color: #D0D0D1;
  font-size: 2.22vh;
  font-weight: 700;
  line-height: 2.664vh;
}

.projects-constructor-hint-popup__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.222vh 0.888vh;
  gap: 1.11vh;
  overflow: hidden;
  background: rgba(247, 241, 236, 0.08);
  border-radius: 0.666vh;
  color: #D0D0D1;
  font-size: 1.776vh;
  font-weight: 700;
  line-height: 2.22vh;
  text-transform: uppercase;
}

.projects-constructor-hint-popup__close {
  width: 2.664vh;
  height: 2.664vh;
  padding: 0;
  border: none;
  background: transparent;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.projects-constructor-hint-popup__intro {
  margin: 0;
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 0.888vh;
  color: #D0D0D1;
  font-size: 1.554vh;
  font-weight: 500;
  line-height: 1.998vh;
}

.projects-constructor-hint-popup__list {
  position: absolute;
  top: 15.984vh;
  left: 2.664vh;
  z-index: 1;
  width: 41.292vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 1.776vh;
  padding: 2.664vh;
  box-sizing: border-box;
  border-radius: 1.776vh;
  overflow: hidden;
  outline: var(--app-border-width) solid #DCA028;
  outline-offset: calc(-1 * var(--app-border-width));
}

.projects-constructor-hint-popup__item {
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 2.664vh;
  padding: 0.444vh;
  overflow: hidden;
  box-sizing: border-box;
}

.projects-constructor-hint-popup__item-text {
  flex: 1 1 0;
  min-width: 0;
  color: #D0D0D1;
  font-size: 1.776vh;
  font-weight: 500;
  line-height: 2.22vh;
}

.projects-constructor-hint-popup__item::before {
  content: "";
  flex-shrink: 0;
  width: 0.666vh;
  height: 0.666vh;
  border-radius: 0.333vh;
  background: #D0D0D1;
}

.projects-constructor-hint-popup__required {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  gap: 1.11vh;
  overflow: hidden;
  color: #D0D0D1;
  background: rgba(247, 241, 236, 0.08);
  font-size: 1.554vh;
  font-weight: 700;
  line-height: 1.998vh;
  text-transform: uppercase;
  padding: 0.222vh 0.888vh;
  border-radius: 0.666vh;
}

.projects-constructor-hint-popup__footer {
  width: 46.62vh;
  height: 47.286vh;
  padding: 2.664vh;
  box-sizing: border-box;
  flex-shrink: 0;
  overflow: hidden;
  border-radius: 0 0 1.776vh 1.776vh;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 2.664vh;
  align-items: center;
}

.projects-constructor-hint-popup__footer-text {
  margin: 0;
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 0.888vh;
  color: #D0D0D1;
  font-size: 1.776vh;
  font-weight: 500;
  line-height: 2.22vh;
}

.projects-constructor-hint-popup__accent {
  color: #DCA028;
  font-weight: 500;
}

.projects-constructor-hint-popup__ok {
  width: 26.64vh;
  padding: 0.888vh;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  border: none;
  border-radius: 2.664vh;
  background: #DCA028;
  color: #F7F1EC;
  font-family: inherit;
  font-size: 1.776vh;
  font-weight: 700;
  line-height: 2.22vh;
  text-transform: uppercase;
  cursor: pointer;
}

.projects-constructor-hint-popup__ok:hover {
  filter: brightness(1.05);
}

/* Триггер селекта формы проекта; лист подключён на всех экранах, его же читают договор и чат */
.custom-select-trigger.validation-error {
  outline: none;
  box-shadow: inset 0 0 0 var(--app-border-width) var(--app-color-error);
}

.custom-select-trigger {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 1.332vh;
  cursor: pointer;
  color: #fff;
  font-size: 1.554vh;
  background-image: url("data:image/svg+xml,%3Csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M18%209L12%2015L6%209'%20stroke='%23A9ABAC'%20stroke-width='2'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1.332vh center;
  background-size: 2.664vh;
}

/* Карточка выбранного проекта в шапках договора и актов */
.header-project-info-block {
  display: flex;
  align-items: center;
  gap: 1.332vh;
  min-width: 25vh;
  flex-shrink: 0;
  cursor: pointer;
}

.header-project-avatar {
  width: 5.328vh;
  height: 5.328vh;
  border-radius: 50%;
  object-fit: cover;
  border: var(--app-border-width) solid #5FAFFF;
}

.header-project-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.header-project-name {
  font-weight: 700;
  font-size: 2.222vh;
  color: #ffffff;
  line-height: 2.664vh;
  margin-bottom: 0.444vh;
}

.header-project-name.header-project-name--no-project {
  color: #D0D0D1;
}

.header-project-address {
  font-size: 1.332vh;
  color: #888;
  line-height: 1.776vh;
  font-weight: 500;
}

/* Базовая карточка «добавить» */
.add-new-card {
  border-radius: 1.332vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
