/* #186 · BATTLE-ENTRY-DESIGN-001 · scoped presentation; no animation owner. */
.battle-entry-dialog.battle-entry-design {
  --be-gold: #d6ae58;
  --be-gold-light: #f6d68e;
  --be-gold-dark: #80602c;
  --be-text: #e4e0d7;
  --be-muted: #b9b5aa;
  --be-line: #7c6942;
  --be-available-height: calc(min(var(--tg-viewport-height, 100dvh), 100dvh) - var(--mori-safe-top, 0px) - var(--mori-safe-bottom, 0px) - 16px);
  box-sizing: border-box;
  position: fixed;
  inset: var(--mori-safe-top, 0px) var(--mori-safe-right, 0px) var(--mori-safe-bottom, 0px) var(--mori-safe-left, 0px);
  width: min(480px, calc(100vw - var(--mori-safe-left, 0px) - var(--mori-safe-right, 0px) - 16px));
  max-width: calc(100vw - var(--mori-safe-left, 0px) - var(--mori-safe-right, 0px) - 16px);
  max-height: var(--be-available-height);
  margin: auto;
  padding: 0;
  border: 1px solid var(--be-line);
  border-radius: 3px;
  color: var(--be-text);
  background: #090a09;
  box-shadow: 0 12px 36px #0008;
  color-scheme: dark;
  font: 400 1rem/1.45 "V23 Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  overflow: hidden;
}

.battle-entry-design,
.battle-entry-design * {
  box-sizing: border-box;
}

.battle-entry-design .be-viewport {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  max-height: calc(var(--be-available-height) - 2px);
  isolation: isolate;
}

.battle-entry-design .be-scroll {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 0;
  max-height: inherit;
  overflow: auto;
  overscroll-behavior: contain;
  scroll-padding: 12px;
  -webkit-overflow-scrolling: touch;
}

.battle-entry-design .be-edge-host {
  position: absolute;
  z-index: 6;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}

.battle-entry-design .be-panel {
  position: relative;
  display: grid;
  gap: 14px;
  min-width: 0;
  padding: 12px;
  isolation: isolate;
  background: linear-gradient(90deg, #070807cc, #0b0c0a88 50%, #070807cc);
}

.battle-entry-design .be-panel::before,
.battle-entry-design .be-panel::after {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
}

.battle-entry-design .be-panel::before {
  inset: 5px;
  border: 1px solid #c7a25a30;
  background: linear-gradient(110deg, transparent 45%, #d8b56a05 49%, transparent 53%);
}

.battle-entry-design .be-panel::after {
  inset: 0;
  background: radial-gradient(ellipse at 50% 29%, #b98e3220, transparent 51%), linear-gradient(transparent 30%, #050605ed 77%);
}

.battle-entry-design .be-ambient {
  position: absolute;
  z-index: -2;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  background: #10110e;
}

.battle-entry-design .be-ambient .be-decor-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  opacity: .28;
}

.battle-entry-design .be-header {
  position: relative;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) 48px;
  align-items: center;
  gap: 4px;
  min-height: 76px;
  padding: 5px;
  border: 1px solid #b99955;
  border-radius: 2px;
  background: linear-gradient(140deg, #292a22 0%, #0e100e 17%, #080a09 76%, #303027);
  box-shadow: inset 0 0 0 3px #070907, inset 0 0 0 4px #9e7c3d55, 0 3px 0 #000;
}

.battle-entry-design .be-header::before,
.battle-entry-design .be-header::after {
  content: "";
  position: absolute;
  left: 13%;
  right: 13%;
  height: 2px;
  pointer-events: none;
  background: linear-gradient(90deg, transparent, #8e692a 18%, #f5d68b 50%, #8e692a 82%, transparent);
}

.battle-entry-design .be-header::before { top: 0; }
.battle-entry-design .be-header::after { bottom: 0; }

.battle-entry-design .be-heading {
  display: grid;
  justify-items: center;
  gap: 0;
  min-width: 0;
  padding: 2px 0 5px;
}

.battle-entry-design h2 {
  margin: 0;
  color: var(--be-gold-light);
  font: 400 clamp(1.55rem, 6vw, 2.05rem)/1.15 "V23 Russo One", Impact, sans-serif;
  letter-spacing: .075em;
  text-align: center;
  text-transform: uppercase;
  overflow-wrap: anywhere;
  text-shadow: 0 2px 0 #624519, 0 4px 1px #000;
}

.battle-entry-design .be-crown {
  width: 35px;
  height: 24px;
  pointer-events: none;
}

.battle-entry-design .be-crown[data-art-status="missing"],
.battle-entry-design .be-crown[data-art-status="error"] {
  visibility: hidden;
}

.battle-entry-design .be-crown .be-decor-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.battle-entry-design section {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

.battle-entry-design p {
  margin: 0;
  overflow-wrap: anywhere;
}

.battle-entry-design .be-notice:empty { display: none; }

.battle-entry-design .be-notice .inline-error {
  margin: 0;
  padding: 12px;
  border: 1px solid #ce8d67;
  background: #261a13;
  color: #ffe5cf;
}

.battle-entry-design .be-mode {
  display: grid;
  justify-items: center;
  gap: 6px;
  padding: 3px 4px 0;
  text-align: center;
}

.battle-entry-design .be-eyebrow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 10px;
  max-width: 100%;
  color: #ddc69c;
  font-size: .8rem;
  letter-spacing: .17em;
  text-transform: uppercase;
}

.battle-entry-design .be-eyebrow::before,
.battle-entry-design .be-eyebrow::after {
  content: "";
  width: 24px;
  height: 1px;
  background: linear-gradient(90deg, transparent, #aa8e51);
}

.battle-entry-design .be-eyebrow::after { transform: rotate(180deg); }

.battle-entry-design h3 {
  margin: 0;
  color: var(--be-gold-light);
  font: 700 clamp(1.8rem, 6.9vw, 2.5rem)/1.08 Georgia, "Times New Roman", serif;
  letter-spacing: -.025em;
  overflow-wrap: anywhere;
}

.battle-entry-design .be-description {
  max-width: 34ch;
  color: var(--be-text);
  font-size: .95rem;
  line-height: 1.4;
}

.battle-entry-design .be-fighters {
  position: relative;
  padding: 10px 10px 13px;
  border: 1px solid #ba9858;
  border-radius: 2px;
  background: radial-gradient(ellipse at 50% 23%, #5a472126, transparent 70%), linear-gradient(155deg, #171a16, #080a09 48%, #151712);
  box-shadow: inset 0 0 0 3px #080a08, inset 0 0 0 4px #87704755;
}

.battle-entry-design .be-fighters::before,
.battle-entry-design .be-fighters::after {
  content: "";
  position: absolute;
  width: 28px;
  height: 28px;
  border-color: #d7c28c;
  border-style: solid;
  pointer-events: none;
}

.battle-entry-design .be-fighters::before {
  top: 5px;
  left: 5px;
  border-width: 2px 0 0 2px;
}

.battle-entry-design .be-fighters::after {
  right: 5px;
  bottom: 5px;
  border-width: 0 2px 2px 0;
}

.battle-entry-design .be-fighter-pair {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: stretch;
  gap: 22px;
  min-width: 0;
}

.battle-entry-design .be-scene {
  position: relative;
  min-width: 0;
  overflow: hidden;
  isolation: isolate;
}

.battle-entry-design .be-scene .be-fighter-pair {
  z-index: 1;
}

.battle-entry-design .be-nameplates {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: stretch;
  gap: 22px;
  min-width: 0;
}

.battle-entry-design .be-fighter {
  display: grid;
  grid-template-rows: auto 1fr;
  min-width: 0;
}

.battle-entry-design .be-fighter-art {
  position: relative;
  height: clamp(140px, 46vw, 220px);
  min-width: 0;
  overflow: hidden;
  pointer-events: none;
}

.battle-entry-design .be-fighter-art .be-decor-image {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center bottom;
}

.battle-entry-design .be-art-placeholder {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: end center;
  color: #b4985c;
  background: radial-gradient(ellipse at 50% 60%, #c0983b13, transparent 65%);
}

.battle-entry-design .be-art-placeholder svg {
  width: min(90%, 126px);
  height: 100%;
  color: #6d705a;
  fill: #22291f;
  stroke: #ac8e4f;
  stroke-width: .7;
  opacity: .7;
}

.battle-entry-design .be-art-plinth {
  position: absolute;
  bottom: 0;
  left: 5%;
  right: 5%;
  height: 1px;
  background: linear-gradient(90deg, transparent, #c6a45b99, transparent);
}

.battle-entry-design .be-art-placeholder[hidden],
.battle-entry-design .be-decor-image[hidden] {
  display: none;
}

.battle-entry-design .be-fighter-nameplate {
  position: relative;
  display: grid;
  align-content: start;
  justify-items: center;
  gap: 2px;
  min-width: 0;
  min-height: 54px;
  padding: 7px 5px;
  border: 1px solid #9c7e3f;
  background: linear-gradient(135deg, #1a1d15, #080a08 50%, #171a14);
  text-align: center;
}

.battle-entry-design .be-fighter-role {
  min-width: 0;
  max-width: 100%;
  color: var(--be-gold-light);
  font-size: .8rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}

.battle-entry-design .be-fighter-name {
  max-width: 100%;
  color: var(--be-text);
  font-size: .95rem;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.battle-entry-design .be-versus {
  position: absolute;
  top: 42%;
  left: 50%;
  width: 24px;
  height: 24px;
  transform: translateX(-50%);
  pointer-events: none;
}

.battle-entry-design .be-versus-stroke {
  position: absolute;
  top: 11px;
  left: 0;
  width: 24px;
  height: 2px;
  background: #f0c36c;
}

.battle-entry-design .be-versus-stroke:first-child { transform: rotate(45deg); }
.battle-entry-design .be-versus-stroke:nth-child(2) { transform: rotate(-45deg); }

.battle-entry-design .be-rules {
  display: grid;
  justify-items: center;
  gap: 8px;
  padding: 13px 2px 0;
  text-align: center;
}

.battle-entry-design h4 {
  margin: 0;
  max-width: 100%;
  color: var(--be-gold-light);
  font: 700 1.5rem/1.15 Georgia, "Times New Roman", serif;
  overflow-wrap: anywhere;
}

.battle-entry-design .be-rule-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 5px 12px;
  margin: 0;
  padding: 0;
  list-style: none;
  color: #ccc8bc;
  font-size: .83rem;
}

.battle-entry-design .be-rule-list li,
.battle-entry-design .be-turn-time {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
}

.battle-entry-design .be-rule-list svg,
.battle-entry-design .be-turn-time svg {
  flex: none;
  width: 16px;
  height: 16px;
  color: #d7be82;
}

.battle-entry-design .be-zone-mark {
  display: grid;
  grid-template-columns: 5px 5px;
  gap: 2px;
  pointer-events: none;
}

.battle-entry-design .be-zone-mark i {
  width: 5px;
  height: 5px;
  border: 1px solid #d7be82;
}

.battle-entry-design .be-turn-time {
  min-width: 0;
  max-width: 100%;
  color: #dbd7cb;
  font-size: .9rem;
}

.battle-entry-design .be-turn-time span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.battle-entry-design .be-status {
  padding: 0 4px;
  color: #c7c0b0;
  font-size: .85rem;
  line-height: 1.4;
  text-align: center;
}

.battle-entry-design .be-actions {
  display: grid;
  gap: 9px;
  min-width: 0;
}

.battle-entry-design .be-link {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 0 1px 3px;
}

.battle-entry-design .be-link label {
  padding-inline: 3px;
  color: #d4c5a1;
  font-size: .76rem;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.battle-entry-design .be-link-control {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 44px;
  align-items: center;
  gap: 3px;
  min-width: 0;
  padding: 4px;
  border: 1px solid #a1874e;
  border-radius: 2px;
  background: #080b09;
  box-shadow: inset 0 0 0 2px #201f16;
}

.battle-entry-design .be-copy-feedback {
  position: relative;
  display: grid;
  align-content: center;
  min-height: 1.45em;
  padding: 0 3px;
  color: #d6d0bf;
  font-size: .85rem;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.battle-entry-design .be-copy-feedback-size,
.battle-entry-design .be-copy-feedback-value {
  grid-area: 1 / 1;
  min-width: 0;
}

.battle-entry-design .be-copy-feedback-size::before {
  content: "Нажми на поле ссылки и скопируй её вручную.";
  visibility: hidden;
}

.battle-entry-design .be-copy-feedback[data-copy-feedback="success"] { color: #eddaaa; }
.battle-entry-design .be-copy-feedback[data-copy-feedback="error"] { color: #efc8ae; }

.battle-entry-design input {
  display: block;
  width: 100%;
  min-width: 0;
  min-height: 44px;
  padding: 8px;
  border: 1px solid transparent;
  border-radius: 0;
  background: #090b09;
  color: #e3dfd4;
  font: 400 .9rem/1.4 "V23 Roboto Condensed", Arial, sans-serif;
  direction: ltr;
  text-align: left;
}

.battle-entry-design button {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  min-width: 44px;
  min-height: 48px;
  margin: 0;
  padding: 12px 16px;
  border: 1px solid #a38b54;
  border-radius: 2px;
  background: linear-gradient(135deg, #181b16, #090c09 60%, #1c2018);
  color: var(--be-text);
  box-shadow: inset 0 0 0 2px #080a07, inset 0 0 0 3px #bfa16524;
  font: 400 1rem/1.3 "V23 Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  text-align: center;
  overflow-wrap: anywhere;
  cursor: pointer;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}

.battle-entry-design .be-button svg {
  flex: none;
  width: 24px;
  height: 24px;
  pointer-events: none;
}

.battle-entry-design .be-button-text {
  min-width: 0;
  overflow-wrap: anywhere;
}

.battle-entry-design .be-button--primary {
  min-height: 56px;
  border-color: #f0d18a;
  background: linear-gradient(118deg, #b18131, #f5d585 42%, #dcae50 74%, #bb8a36);
  color: #15130d;
  box-shadow: inset 0 0 0 2px #5f431b, inset 0 0 0 3px #f4d48b, 0 2px 0 #33270f;
  font-size: 1.07rem;
  font-weight: 700;
}

.battle-entry-design .be-button--secondary {
  border-color: #c2a360;
  color: #e1ded3;
}

.battle-entry-design .be-button-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
  flex: 1;
  text-align: left;
}

.battle-entry-design .be-button--bot {
  justify-content: start;
  min-height: 66px;
  border-color: #c7a45d;
  color: var(--be-gold-light);
  background: repeating-linear-gradient(135deg, #d8b56a04 0 1px, transparent 1px 5px), linear-gradient(130deg, #1c1e16, #080a08 70%, #202217);
}

.battle-entry-design .be-button--bot .be-button-text {
  font-size: 1.12rem;
  font-weight: 700;
}

.battle-entry-design .be-button-detail {
  color: #c1beb0;
  font-size: .85rem;
  font-weight: 400;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.battle-entry-design .be-chevron {
  display: block;
  flex: none;
  width: 7px;
  height: 7px;
  margin-inline-start: auto;
  border-top: 1px solid currentColor;
  border-right: 1px solid currentColor;
  transform: rotate(45deg);
  pointer-events: none;
}

.battle-entry-design .be-button--primary .be-button-text,
.battle-entry-design .be-button--secondary .be-button-text,
.battle-entry-design .be-return .be-button-text {
  flex: 1;
}

.battle-entry-design .be-back,
.battle-entry-design .be-motion-toggle,
.battle-entry-design .be-copy-inline {
  width: 44px;
  height: 44px;
  min-height: 44px;
  padding: 9px;
}

.battle-entry-design .be-motion-toggle {
  justify-self: end;
  border-color: #5e5e49;
  background: #0d100b;
  color: #d3c5a0;
}

.battle-entry-design .be-motion-glyph {
  display: block;
  width: 14px;
  height: 18px;
  border-inline: 4px solid currentColor;
  pointer-events: none;
}

.battle-entry-design .be-motion-glyph[data-motion-enabled="false"] {
  width: 0;
  height: 0;
  border-top: 9px solid transparent;
  border-bottom: 9px solid transparent;
  border-left: 14px solid currentColor;
  border-right: 0;
}

.battle-entry-design .be-back {
  justify-self: start;
  border-color: #7b704e;
  background: #090c09;
  color: #eee8db;
}

.battle-entry-design .be-bot {
  display: grid;
  gap: 9px;
}

.battle-entry-design .be-warning {
  padding: 9px 11px;
  border-inline-start: 2px solid #d7a65b;
  background: #272014;
  color: #ecd7aa;
  font-size: .9rem;
}

.battle-entry-design .be-return {
  min-height: 48px;
  margin-top: 2px;
  border-color: #655f4e;
  color: #c8c7bd;
  background: #0e110e;
  font-size: .95rem;
}

.battle-entry-design button:disabled {
  opacity: 1;
  border-color: #5c5f54;
  color: #a7aa9e;
  background: #252822;
  box-shadow: inset 0 0 0 2px #12160f;
  cursor: not-allowed;
}

.battle-entry-design button:disabled .be-button-detail { color: #b2b4aa; }

.battle-entry-design button:focus-visible,
.battle-entry-design input:focus-visible {
  z-index: 1;
  outline: 3px solid #fff0b3;
  outline-offset: 3px;
}

@media (hover: hover) {
  .battle-entry-design button:hover:not(:disabled) {
    border-color: #ffe6a1;
    color: #fff1ca;
    background: #2a291a;
  }

  .battle-entry-design .be-button--primary:hover:not(:disabled) {
    color: #0e100a;
    background: linear-gradient(118deg, #d7a342, #ffe5a1 46%, #e8bc64 82%, #cca14c);
  }
}

.battle-entry-design button:active:not(:disabled) {
  background: #40351e;
  color: #fff0c8;
  box-shadow: inset 0 2px 3px #0009, inset 0 0 0 2px #aa8b4b;
}

.battle-entry-design .be-button--primary:active:not(:disabled) {
  background: #b99045;
  color: #16150f;
}

@media (max-width: 359px) {
  .battle-entry-design .be-panel { gap: 12px; padding: 10px; }
  .battle-entry-design .be-header { grid-template-columns: 44px minmax(0, 1fr) 44px; }
  .battle-entry-design .be-fighters { padding-inline: 8px; }
  .battle-entry-design .be-fighter-pair,
  .battle-entry-design .be-nameplates { gap: 18px; }
  .battle-entry-design .be-rule-list { column-gap: 10px; }
  .battle-entry-design button { gap: 9px; padding-inline: 12px; }
  .battle-entry-design .be-back,
  .battle-entry-design .be-motion-toggle,
  .battle-entry-design .be-copy-inline { padding: 9px; }
}

@media (max-width: 259px) {
  .battle-entry-design .be-header { grid-template-columns: 44px minmax(0, 1fr) 44px; }
  .battle-entry-design .be-crown,
  .battle-entry-design .be-eyebrow::before,
  .battle-entry-design .be-eyebrow::after { display: none; }
  .battle-entry-design h2 { font-size: 1.2rem; }
  .battle-entry-design .be-fighter-pair,
  .battle-entry-design .be-nameplates { gap: 10px; }
  .battle-entry-design .be-versus { display: none; }
  .battle-entry-design .be-button svg { width: 20px; height: 20px; }
  .battle-entry-design button { gap: 7px; padding-inline: 9px; }
}

@media (max-height: 540px) {
  .battle-entry-design .be-panel { gap: 10px; }
  .battle-entry-design .be-header { min-height: 64px; }
  .battle-entry-design .be-fighter-art { height: 96px; }
  .battle-entry-design .be-rules { padding-top: 10px; }
}

@media (forced-colors: active) {
  .battle-entry-design .be-ambient,
  .battle-entry-design .be-versus,
  .battle-entry-design .be-edge-host { display: none; }
  .battle-entry-design button,
  .battle-entry-design input { border: 1px solid ButtonText; box-shadow: none; }
  .battle-entry-design button:focus-visible,
  .battle-entry-design input:focus-visible { outline-color: Highlight; }
}
