/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}

@font-face {
  font-family: "Redacted";
  src: url(3a3eb14d3bced9a730cc.ttf) format("truetype");
}
:root {
  --alpha: #FAFAFA;   /* фон страницы (белый) */
  --beta: #F4F4F4;    /* фон шапки (серый) */
  --gamma: #1A1A1A;   /* обычный текст (чёрный) */
  --delta: #a0a0a0;   /* ссылки (серый) */
  --epsilon: #1E3A8A; /* декоративный (бордовый) */
  --teta: #880a0a;    /* фон блоков (красный) */
  --border: 3px solid var(--gamma);
  --small-gap: 6px;
  --large-gap: 8px;
}

body {
  aspect-ratio: 1 / 1.414;
  font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;
}

h1 {
  margin: 0;
  padding: 0;
}

h2 {
  margin: 0;
  padding: 0;
}

p {
  margin: 0;
  padding: 0;
}

button {
  cursor: pointer;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
}

input {
  cursor: pointer;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
}

.title {
  color: var(--gamma);
  font-size: 42px;
}

.screen-subtitle {
  color: var(--gamma);
  font-size: 24px;
}

.screen-title {
  color: var(--gamma);
  font-size: 32px;
} 

.text {
  color: var(--gamma);
  font-size: 24px;
  font-weight: 400;
  transition: all 0.3s ease-out;
}

.screen-text {
  color: var(--gamma);
  font-size: 18px;
  font-weight: 400;
  transition: all 0.3s ease-out;
  text-align: left;
}

.encrypted-text {
  font-family: "Redacted", monospace;
  user-select: none;
  pointer-events: none;
}

.link {
  color: var(--delta);
}

.span {
  color: var(--gamma);
}
.time-machine {
  display: flex;
  justify-content: flex-end;
  height: 100vh;
  width: 100vw;
  padding: 48px 48px;
  box-sizing: border-box;
  background-image: url(ed8bc2d02688ba25624a.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.time-machine__workspace {
  padding: var(--large-gap);
  display: flex;
  justify-content: flex-end;
  background: url(5c5359a71d2dcc8d9e7e.webp) no-repeat center / cover;
}
.control-panel {
  padding: 24px var(--large-gap);
  display: grid;
  order: 1;
  grid-template: min-content min-content min-content / min-content max-content;
  grid-template-areas:
  "toolbar translation"
  "data data"
  "day scale"
  ". callArea";
  gap: var(--large-gap);
}

.control-panel__scale-block {
  min-width: calc(24*5px);
  grid-area: scale;
  display: grid;
  grid-template: repeat(7, 50px) / 1fr;
  gap: var(--small-gap);
  align-items: center;
}

.control-panel__scale {
  text-shadow:
    1px 1px 2px #919191,
    -1px -1px 2px #5f5f5f;
  opacity: 0;
  transform: scale(0.95);
  animation: fadeInScale 0.4s ease forwards;
  cursor: default;
}

@keyframes fadeInScale {
  to {
    opacity: 1;
    transform: scale(1);
  }
}
.toolbar {
  grid-area: toolbar;
  display: flex;
  justify-content: space-between;
  /* margin-bottom: 48px; */
  border-radius: 5px;
  background: var(--gamma);
}

.toolbar__button {
  height: 48px;
  font-size: 24px;
  transition: all 0.2s ease-out;
  box-shadow: 4px 4px 16px rgba(0,0,0,0.5);
}

.toolbar__button:hover {
  transform: scale(0.95);
  box-shadow: 3px 3px 14px rgba(0,0,0,0.5);
}

.toolbar__button:active {
  transform: scale(0.9);
}

.toolbar__button_type_wide-black {
  color: var(--delta);
  width: 68px;
  margin: 1px;
  background: url(f97807b9f4fd7ed17674.png) no-repeat center / contain;
}

.toolbar__button_type_wide-white {
  width: 103px;
  margin: 1px;
  background: url(972c78877bafa2484a82.png) no-repeat center / 100% 100%;
  font-size: 36px;
}

.toolbar__cell {
  display: flex;
}

.toolbar__indicator {
  height: 24px;
  width: 24px;
  margin: 12px;
  background: url(50e0acee59aab5b2a443.png) no-repeat center / contain;
  background-blend-mode: multiply;
  border-radius: 50%;
  opacity: 0.7;
}

.toolbar__indicator_active {
  background: url(734b9b7d4e569fde20f3.png) no-repeat center / cover;
  animation: indicator-fade-in 0.5s cubic-bezier(.4,0,.2,1) forwards;
}

@keyframes indicator-fade-in {
  0% {
    opacity: 0.7;
    background: url(50e0acee59aab5b2a443.png) no-repeat center / cover;
  }
  100% {
    opacity: 1;
    background: url(734b9b7d4e569fde20f3.png) no-repeat center / cover;
    background-color: #008cff;
    box-shadow: 0 0 75px #be8cc5;
  }
}
.translation {
  grid-area: translation;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-content: flex-start;
  justify-content: space-between;
  height: 48px;
}

.translation__tumbler {
  height: 48px;
  width: 34px;
  transition: all 0.2s ease-out;
}

.translation__tumbler:hover {
  animation: subtle-vibration 0.3s linear;
}

.translation__tumbler_set_up {
  background: url(baabf196e84723016cc7.png) no-repeat center / contain;
}

.translation__tumbler_set_down {
  background: url(3afa247c30a196d2de3e.png) no-repeat center / contain;
}

.translation__tumbler-label {
  height: 18px;
  margin: 3px;
  text-shadow:
    1px 1px 2px #919191,
    -1px -1px 2px #5f5f5f;
  cursor: default;
}

@keyframes subtle-vibration {
  0% { transform: translate(0, 0); }
  10% { transform: translate(-0.5px, 0.5px); }
  20% { transform: translate(0.5px, -0.5px); }
  30% { transform: translate(-0.5px, 0.5px); }
  40% { transform: translate(0.5px, -0.5px); }
  50% { transform: translate(-0.5px, 0.5px); }
  60% { transform: translate(0.5px, -0.5px); }
  70% { transform: translate(-0.5px, 0.5px); }
  80% { transform: translate(0.5px, -0.5px); }
  90% { transform: translate(-0.5px, 0.5px); }
  100% { transform: translate(0, 0); }
}
.days-grid {
  grid-area: day;
  display: flex;
  gap: var(--small-gap);
  min-width: 374px;
  height: 386px;
  flex-wrap: wrap;
  flex-direction: column;
}

.days-grid__cell {
  height: 50px;
  width: 70px;
  border-radius: 5px;
  background: var(--gamma);
  display: flex;
  align-items: flex-end;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: center;
}

.days-grid__cell_active {
  pointer-events: none;
}

.days-grid__cell_active .days-grid__button {
  transform: scale(0.9);
  color: var(--beta);
  text-shadow: 0 0 6px var(--beta);
}

.days-grid__button {
  color: var(--gamma);
  height: 50px;
  border-radius: 5px;
  font-size: 24px;
  font-weight: 400;
  transition: all 0.2s ease-out;
  box-shadow: 4px 4px 14px rgba(0,0,0,0.5);
}

.days-grid__button:hover {
  transform: scale(0.95);
  box-shadow: 3px 3px 14px rgba(0,0,0,0.5);
}

.days-grid__button:active {
  color: var(--beta);
  text-shadow: 0 0 6px var(--beta);
  transform: scale(0.9);
}

.days-grid__button_type_thin {
  width: 50px;
  background: url(3acab3ac6b23c5a29d98.png) no-repeat center / contain;
}

.days-grid__indicator {
  margin-bottom: 3px;
  height: 16px;
  width: 16px;
  background: url(50e0acee59aab5b2a443.png) no-repeat center / cover;
  /* background-color: #f2ffb9; */
  background-blend-mode: multiply;
  border-radius: 50%;
  margin: 3px;
  opacity: 0.5;
  transition: all 0.2s ease-out;
}

.days-grid__indicator_active {
  opacity: 1;
  background: url(734b9b7d4e569fde20f3.png) no-repeat center / cover;
}

.days-grid__indicator_active.days-grid__indicator_color_yellow {
  animation: indicator-fade-in-yellow 0.5s cubic-bezier(.4,0,.2,1) forwards;
}

.days-grid__indicator_active.days-grid__indicator_color_red {
  animation: indicator-fade-in-red 0.5s cubic-bezier(.4,0,.2,1) forwards;
}

@keyframes indicator-fade-in-yellow {
  0% {
    opacity: 0.5;
    background: url(50e0acee59aab5b2a443.png) no-repeat center / cover;
  }
  100% {
    opacity: 1;
    background: url(734b9b7d4e569fde20f3.png) no-repeat center / cover;
    background-color: #f2ffb9;
    box-shadow: 0 0 6px #f2ffb9;
  }
}

@keyframes indicator-fade-in-red {
  0% {
    opacity: 0.5;
    background: url(50e0acee59aab5b2a443.png) no-repeat center / cover;
  }
  100% {
    opacity: 1;
    background: url(734b9b7d4e569fde20f3.png) no-repeat center / cover;
    background-color: #c94444;
    box-shadow: 0 0 6px #c94444;
  }
}
.display {
  grid-area: data;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: url(e90b1c293c2b13ecbfd7.png);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-position: center;
  min-width: 324px;
  height: 150px;
  position: relative;
}

.display__data-value {
  color: var(--beta);
  box-sizing: border-box;
  background: none;
  border: none;
  width: 80%;
  text-shadow: 0 0 6px var(--beta);
  transition: all 0.2s ease-out;
  cursor: default;
}

.display__data-value:hover {
  text-shadow: 0 0 12px var(--beta);
}

.display__data-value:focus {
  border: none;
  outline: none;
}

.display__potentiometer {
  height: 112px;
  width: 20px;
  background: url(424c6dbade6ca6216647.png) no-repeat center / cover;
  position: absolute;
  transition: all 0.1s ease-out, filter 0.4s ease-out;
  overflow: hidden;
}

.display__potentiometer:hover {
  filter: drop-shadow(0 0 6px white);
}

.display__potentiometer_target_year {
  top: 23px;
  right: 30px;
}

.display__potentiometer_target_month {
  top: 23px;
  right: 84px;
}

.call-area {
  grid-area: callArea;
  align-self: flex-end;
}

.call-area__label {
  text-shadow:
    1px 1px 2px #919191,
    -1px -1px 2px #5f5f5f;
  opacity: 0;
  transform: scale(0.95);
  animation: fadeInScale 0.4s ease forwards;
  cursor: default;
  text-align: center;
  margin-bottom: var(--small-gap);
}

.call-area__cell {
  height: 50px;
  width: 100%;
  border-radius: 5px;
  background: var(--gamma);
  display: flex;
}

.call-area__button {
  height: 48px;
  font-size: 24px;
  transition: all 0.2s ease-out;
  box-shadow: 4px 4px 16px rgba(0,0,0,0.5);
  color: var(--gamma);
  width: 100%;
  margin: 1px;
  background: url(d8529cc1af91e7ba51e1.png) no-repeat center / 100% 100%;
}

.call-area__button:hover {
  transform: scale(0.95);
  box-shadow: 3px 3px 14px rgba(0,0,0,0.5);
}

.call-area__button:active {
  transform: scale(0.9);
}
.screen {
  display: flex;
  order: 0;
  justify-content: center;
  min-width: 500px;
  width: 30vw;
  padding: 40px;
  box-sizing: border-box;
  background: url(0549960720e3d722ff70.webp) no-repeat center / 100% 100%;
}
.schedule {
  width: 100%;
  display: flex;
  justify-content: center;
  position: relative;
}

.schedule__tools {
  display: none;
  position: absolute;
  top: 0;
  right: 0;
}

.schedule__tools_enabled {
  display: flex;
}

.schedule__list {
  width: 60%;
  padding-inline-start: 20px;
}

.schedule__item {  
  overflow-wrap: anywhere;
  word-break: break-word;
  hyphens: auto;
  cursor: pointer;
}

.schedule__item:hover {
  color: var(--beta);
  background-color: var(--gamma);
}
.announcement {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  position: relative;
  overflow-y: auto;
}

.announcement__image {
  pointer-events: none;
  max-height: 45%;
  width: 100%;
  object-fit: cover;
}

.announcement__image_desaturated {
  filter: grayscale(1);
}

.announcement__image_disabled {
  display: none;
}

.announcement__head {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  min-height: 76px;
}

.announcement__head .screen-title {
  overflow-wrap: anywhere;
  word-break: break-word;
  hyphens: auto;
}

.announcement__head .screen-title:hover {
  cursor: pointer;
  background: var(--gamma);
  color: var(--beta);
}

.announcement__place {
  text-align: end;
  width: 46%;
}

.announcement__time {
  background: var(--gamma);
  color: var(--beta);
  padding: 0 3px;
}

.announcement__description {
  border-bottom: 3px solid;
  padding-bottom: var(--small-gap);
  white-space: pre-wrap;
}

.announcement__closed {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.announcement__closed_disabled {
  display: none;
}

.announcement__encryption {
  word-break: break-all;
  border-bottom: 3px solid;
  padding-bottom: var(--small-gap);
  width: 100%;
  white-space: pre-wrap;
}

.announcement__input {
  color: var(--beta);
  background: var(--gamma);
  outline: none;
  box-sizing: border-box;
  height: 24px;
  width: 80px;
  padding: 0 3px;
}

.announcement__button {
  width: 24px;
  height: 24px;
  background: var(--beta);
  border: 1px solid var(--gamma);
  padding: 0 3px;
}

.announcement__button_type_submit {
  color: var(--beta);
  height: 24px;
  width: 30px;
  background: var(--gamma);
  border: none;
  outline: none;
  box-sizing: border-box;
}

.announcement__button_type_denyed {
  color: var(--teta);
  height: 24px;
  width: 30px;
  background: var(--gamma);
  border: none;
  outline: none;
  box-sizing: border-box;
  pointer-events: none;
}

.announcement__tools {
  position: absolute;
  left: 1px;
  top: 1px;
  display: none;
  flex-direction: column;
  gap: 1px;
}

.announcement__tools_enabled {
  display: flex;
}
.authorization-form {
  display: grid;
  grid-template: min-content min-content min-content min-content min-content 30% / min-content auto;
  gap: 0 var(--small-gap);
  align-content: center;
  align-items: center;
  height: 100%;
}

.authorization-form__handguide {
  grid-row: 1 / 2;
  grid-column: 1 / 3;
  align-self: start;
  justify-self: center;
  margin-bottom: 30px;
}

.authorization-form__label {
  width: max-content;
  justify-self: end;
}

.authorization-form__input {
  outline: none;
  position: relative;
  border-bottom: 1px dashed var(--gamma);
}

/* .authorization-form__input::after {
  content: "";
  display: flex;
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  pointer-events: none;
} */

.authorization-form__validation {
  grid-column: 1 / 3;
  grid-row: 5 / 6;
  margin-top: 30px;
  display: flex;
  flex-direction: column;
  gap: var(--small-gap);
}

.authorization-form__button {
  color: var(--beta);
  background: var(--gamma);
  border-radius: 3%;
  z-index: 1;
  text-align: center;
}

.authorization-form__error {
  background: var(--teta);
  color: var(--beta);
  border-radius: 3%;
  min-height: 21px;
  font-size: 14px;
  transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;    
  display: flex;
  align-items: center;
  justify-content: center;
}

.authorization-form__error_hidden {
  transform: translateY(-150%);
  opacity: 0;
}

.authorization-form__anchor {
  grid-column: 1 / 3;
  grid-row: 6 / 7;
  align-self: end;
  text-align: center;
  justify-self: center;
  text-decoration: underline;
  cursor: pointer;
  max-width: 70%;
}
.profile {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}

.profile__header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  border-bottom: 1px solid var(--gamma);
  box-sizing: border-box;
  height: 10%;
  margin-bottom: var(--small-gap);
}

.profile__body {
  display: flex;
  flex-direction: column;
  border-bottom: 1px solid var(--gamma);
  box-sizing: border-box;
  height: 80%;
  margin-bottom: var(--small-gap);
  overflow: hidden;
}

.profile__announcements {
  display: flex;
  justify-content: space-between;
}

.profile__list {
  height: 100%;
  padding-inline-start: 0;
  overflow: auto;
}

.profile__list-item {
  cursor: pointer;
  transition: all 0.2s ease-out;
  display: flex;
}

.profile__list-item .screen-text {
  max-width: 330px;
}

.profile__list-item:hover {
  background: var(--gamma);
}

.profile__list-item:hover .screen-text {
  color: var(--beta);
}

.profile__tools {
  margin: 0 0 1px auto;
  display: flex;
  gap: 1px;
  position: relative;
}

.profile__legend {
  grid-column: 1 / 3;
  width: 100%;
  justify-self: flex-end;
  display: flex;
  justify-content: space-around;
  margin: auto 0 var(--small-gap) 0;
}

.profile__footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  height: 10%;
  overflow: hidden;
}

.profile__conformation {
  width: 50%;
  display: flex;
  justify-content: space-between;
  transition: all 0.2s ease-out;
}

.profile__conformation_hidden {
  transform: translateY(150%);
  opacity: 0;
}

.profile__button {
  background: var(--beta);
  border: 1px solid var(--gamma);
  height: min-content;
  padding: 0 3px;
  width: 96px;
  transition: all 0.2s ease-out;
}

.profile__button:hover {
  background: var(--gamma);
  color: var(--beta);
}

.profile__button_color_red:hover {
  background: var(--teta);
}

.profile__button_size_wide {
  width: 144px;
}

.announcement-form {
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
  width: 100%;
}

.announcement-form__image {
  pointer-events: none;
  max-height: 45%;
  width: 100%;
  object-fit: cover;
}

.announcement-form__image_desaturate {
  filter: grayscale(1);
}

.announcement-form__image_disabled {
  display: none;
}

.announcement-form__fieldset {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 var(--small-gap);
  padding: 0 0 var(--small-gap);
  border: none;
  border-bottom: 1px solid var(--delta);
  box-sizing: border-box;
  width: 100%;
}

.announcement-form__fieldset_type_grid {
  display: grid;
  grid-template: min-content min-content min-content / min-content 80px min-content auto;
}

.announcement-form__fieldset_type_space-between {
  justify-content: space-between;
}

.announcement-form__fieldset_disabled {
  pointer-events: none;
}

.announcement-form__fieldset_disabled .announcement-form__label,
.announcement-form__fieldset_disabled .announcement-form__input,
.announcement-form__fieldset_disabled .announcement-form__button {
  opacity: 0.4;
}

.announcement-form__text {
  grid-column: 1 / -1;
  font-style: italic;
  text-align: end;
}

.announcement-form__label {
  width: max-content;
  justify-self: end;
}

.announcement-form__input {
  outline: none;
  position: relative;
  border-bottom: 1px dashed var(--gamma);
}

.announcement-form__input_type_checkbox {
  margin: 0 var(--small-gap);
  border: none;
}

.announcement-form__input_type_time {
  border: none;
}

.announcement-form__input_type_password {
  color: var(--beta);
  background: var(--gamma);
  outline: none;
  box-sizing: border-box;
  height: 24px;
  width: 80px;
  padding: 0 3px;
  border: none;
}

.announcement-form__textarea {
  resize: none;
  width: 100%;
}

.announcement-form__button {
  background: var(--gamma);
  border-radius: 3%;
  margin-top: var(--large-gap);
  width: 100%;
  z-index: 1;
}

.announcement-form__button .screen-text {
  color: var(--beta);
  text-align: center;
}

.announcement-form__button_fieldset {
  color: var(--beta);
  background: var(--gamma);
  outline: none;
  box-sizing: border-box;
  height: 24px;
  width: 30px;
  margin: 0;
}

.announcement-form__button_type_delete {
  background: var(--teta);
}

.announcement-form__div {
  display: flex;
}

.announcement-form__error {
  background: var(--teta);
  color: var(--beta);
  border-radius: 3%;
  width: 100%;
  min-height: 21px;
  font-size: 14px;  
  transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;    
  display: flex;
  align-items: center;
  justify-content: center;
}

.announcement-form__error_hidden {
  transform: translateY(-150%);
  opacity: 0;
}
.communication {
  display: flex;
  flex-direction: column;
}
.tools__button {
  width: 24px;
  height: 24px;
  background: var(--beta);
  border: 1px solid var(--gamma);
  padding: 0 3px;
  transition: all 0.2s ease-out;
}

.tools__button:hover {
  color: var(--beta);
}

.tools__button_type_edit:hover {
  background: var(--epsilon);
}

.tools__button_type_delete {
  position: relative;
}

.tools__button_type_delete:hover {
  background: var(--teta);
}

.tools__button_type_delete:active {
  color: var(--teta);
}

.tools__button_type_delete::before {
  content: "";
  position: absolute;
  inset: 2px;
  border-radius: 50%;
  --deg: 0deg;
  background: conic-gradient(black 0deg, black var(--deg), transparent var(--deg));
  pointer-events: none;
  will-change: background, --deg;
}

.tools__button_type_add {
  width: 96px;
  height: min-content;
  justify-content: center;
}

.tools__button_type_add:hover {
  background: var(--epsilon);
}

.tools__button_event_hold::before {
  animation: reveal-fan 1.9s linear forwards;
}

@keyframes reveal-fan {
  0% {
    --deg: 0deg;
  }
  25% {
    --deg: 90deg;
  }
  50% {
    --deg: 180deg;
  }
  75% {
    --deg: 270deg;
  }
  100% {
    --deg: 360deg;
  }
}


