/* email-gate.css — мягкое предложение почты (04.11.2026). Облик D, плоско: без теней, тонкая рамка,
 * фон непрозрачный из токенов (в светлой теме — светлый, никаких чёрных плашек). Карточка встроена в поток
 * основной колонки над контентом инструмента: ничего не перекрывает и не затемняет, а сдвигает содержимое.
 * Свёрнуто — одна строка: заголовок и кнопки. Текст и форма раскрываются по нажатию. Токены — из shell.css. */

.mmeg {
  position: relative; box-sizing: border-box; width: 100%;
  margin: 0 0 12px;
  padding: 10px 12px;
  display: grid; gap: 10px;
  background: var(--surface); color: var(--text);
  border: 1px solid var(--line); border-radius: var(--r-lg);
  font: 400 14px/1.45 var(--font-text);
}
.mmeg *, .mmeg *::before, .mmeg *::after { box-sizing: border-box; }
.mmeg[hidden], .mmeg [hidden] { display: none !important; }

/* Свёрнутая строка: заголовок слева, кнопки справа; на узком экране кнопки переносятся */
.mmeg-head { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; min-width: 0; }
.mmeg-title {
  flex: 1 1 160px; min-width: 0; margin: 0;
  font: 500 14px/1.3 var(--font-head); color: var(--text);
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.mmeg-intro { display: flex; flex-wrap: wrap; gap: 8px; margin-left: auto; }
.mmeg-x {
  flex: 0 0 auto; width: 32px; height: 32px; padding: 0;
  border: 1px solid var(--line-soft); border-radius: 10px; background: var(--surface); color: var(--soft);
  font: 400 20px/1 var(--font-text); cursor: pointer;
}

.mmeg-body { display: grid; gap: 10px; min-width: 0; }
.mmeg-lead { margin: 0; color: var(--soft); font-size: 14px; overflow-wrap: anywhere; }

.mmeg-row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.mmeg-links { justify-content: space-between; }

.mmeg-form { display: grid; gap: 10px; margin: 0; min-width: 0; }
.mmeg-step { display: grid; gap: 8px; min-width: 0; }
.mmeg-label { font-size: 13px; color: var(--soft); }
.mmeg-sent { margin: 0; color: var(--text); overflow-wrap: anywhere; }
.mmeg-note {
  margin: 0; padding: 8px 10px; border: 1px solid var(--line-soft); border-radius: var(--r);
  color: var(--text); font-size: 13px; background: var(--bg); overflow-wrap: anywhere;
}

.mmeg-input {
  width: 100%; min-width: 0; min-height: 42px; padding: 0 12px;
  border: 1px solid var(--line); border-radius: 12px; background: var(--bg); color: var(--text);
  font: 400 16px/1.2 var(--font-text);
}
.mmeg-input:focus { outline: 2px solid var(--accent-text); outline-offset: 1px; }
.mmeg-code { letter-spacing: .2em; font-family: var(--font-mono); font-size: 18px; }

.mmeg-btn {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 38px; padding: 0 14px; min-width: 0;
  border: 1px solid var(--accent); border-radius: 12px; background: var(--accent); color: #fff;
  font: 500 14px/1.2 var(--font-text); text-decoration: none; text-align: center; white-space: nowrap; cursor: pointer;
}
.mmeg-btn:disabled { cursor: progress; opacity: .55; }
.mmeg-btn-ghost { background: var(--surface); color: var(--text); border-color: var(--line); }

.mmeg-link {
  border: 0; background: transparent; color: var(--accent-text); padding: 0; min-height: 36px;
  font: 500 14px/1.2 var(--font-text); cursor: pointer; text-align: left;
}
.mmeg-link:disabled { color: var(--soft); cursor: default; }

.mmeg-msg {
  margin: 0; padding: 9px 12px; border: 1px solid var(--line-soft); border-radius: var(--r);
  color: var(--text); font-size: 14px; background: var(--bg); overflow-wrap: anywhere;
}
.mmeg-msg[data-tone="bad"] { color: var(--bad); border-color: var(--line); }

.mmeg-alt { margin-top: 0; }
.mmeg-done {
  margin: 0; padding: 9px 12px; border: 1px solid var(--line-soft); border-radius: var(--r);
  color: var(--ok); font-size: 14px; background: var(--bg);
}

/* Строка в профиле: «Почта не указана» + кнопка, как прочие карточки профиля */
.mmeg-prof { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: space-between; }
.mmeg-prof > div { min-width: 0; flex: 1 1 200px; }
.mmeg-prof p { margin: 4px 0 0; }
