/* глобальная переменная --construct-scale задаётся Construct автоматически :contentReference[oaicite:0]{index=0} */
:root {
  /* fallback для режима "Full Screen in Browser" до инициализации C3 */
  --construct-scale: 1;
}

/* адаптированная кнопка */
.forge-button {
  --btn-w: calc(var(--construct-scale) * 450px);
  --btn-h: calc(var(--construct-scale) * 100px);
  --bolt-size: calc(var(--construct-scale) * 10px);

  position: relative;
  display: inline-block;
  width: var(--btn-w);
  height: var(--btn-h);
  aspect-ratio: 9 / 2;

  font-family: 'BalkaraFreeCondensed', serif;
  font-size: calc(var(--construct-scale) * 42px);
  font-weight: bold;
  color: #fff9e8;
  text-shadow: 0 0 calc(var(--construct-scale) * 3px) #000;

  background: linear-gradient(145deg,#2f2f2f 0%,#9099a2 45%,#4b535b 100%);
  border: calc(var(--construct-scale) * 6px) solid transparent;
  border-radius: calc(var(--construct-scale) * 10px);

  box-shadow:
    inset 0 0 calc(var(--construct-scale) * 10px) rgba(0,0,0,.6),
    0 calc(var(--construct-scale) * 4px) calc(var(--construct-scale) * 12px) rgba(0,0,0,.5),
    0 0 calc(var(--construct-scale) * 20px) rgba(255,227,149,.1);

  cursor: pointer; user-select: none; overflow: hidden; z-index: 0;
  transition: transform .12s ease, box-shadow .12s ease, background .12s ease;
}

/* пульсация */
.forge-button::before{
  content:''; position:absolute; inset:0;
  background: radial-gradient(circle at 50% 50%,#fcf1c1 0%,transparent 100%);
  opacity:.25; mix-blend-mode:screen; animation:pulse 1.8s ease-in-out infinite;
  pointer-events:none; z-index:0;
}

/* металлическая рамка */
.forge-button::after{
  content:''; position:absolute; inset:calc(var(--construct-scale) * -12px);
  border:calc(var(--construct-scale) * 4px) solid #2a2d30;
  background: inherit; border-radius:calc(var(--construct-scale) * 14px); z-index:-1;
  box-shadow:
    0 0 calc(var(--construct-scale) * 12px) calc(var(--construct-scale) * 3px) rgba(255,227,149,.13),
    0 0 calc(var(--construct-scale) * 7px) 0 rgba(0,0,0,.2),
    inset 0 0 calc(var(--construct-scale) * 6px) rgba(0,0,0,.35);
  transition: background .12s, box-shadow .12s;
}

/* болты */
.forge-button .bolt{
  position:absolute; width:var(--bolt-size); height:var(--bolt-size);
  background: radial-gradient(circle,#dfbe8b 50%,#5c3e24 100%);
  border-radius:50%; z-index:2;
  box-shadow:0 0 calc(var(--construct-scale) * 4px) calc(var(--construct-scale) * 1px) #a47b53,
             inset calc(var(--construct-scale) * 1px) calc(var(--construct-scale) * 1px) calc(var(--construct-scale) * 2px) #fff7c6;
}
.forge-button .bolt.tl{top:calc(var(--construct-scale)*6px);left:calc(var(--construct-scale)*6px);}
.forge-button .bolt.tr{top:calc(var(--construct-scale)*6px);right:calc(var(--construct-scale)*6px);}
.forge-button .bolt.br{bottom:calc(var(--construct-scale)*6px);right:calc(var(--construct-scale)*6px);}
.forge-button .bolt.bl{bottom:calc(var(--construct-scale)*6px);left:calc(var(--construct-scale)*6px);}

/* ховер и активные состояния — пропорциональны масштабу */
.forge-button:hover{
  background:linear-gradient(145deg,#fcf1c1 0%,#f7d356 45%,#4b535b 100%);
  transform:scale(1.03); box-shadow:
    inset 0 0 calc(var(--construct-scale) * 14px) rgba(0,0,0,.7),
    0 calc(var(--construct-scale) * 6px) calc(var(--construct-scale) * 14px) rgba(0,0,0,.5),
    0 0 calc(var(--construct-scale) * 28px) #fcf1c1;
}
.forge-button:hover::after{
  background:inherit; box-shadow:
    0 0 calc(var(--construct-scale) * 32px) calc(var(--construct-scale) * 8px) #fcf1c1,
    0 0 calc(var(--construct-scale) * 7px) 0 rgba(0,0,0,.2),
    inset 0 0 calc(var(--construct-scale) * 9px) rgba(0,0,0,.25);
}
.forge-button:active{
  transform:scale(.96) translateY(calc(var(--construct-scale) * 1px));
  filter:brightness(.92); box-shadow:
    inset 0 0 calc(var(--construct-scale) * 8px) rgba(0,0,0,.8),
    0 calc(var(--construct-scale) * 2px) calc(var(--construct-scale) * 6px) rgba(0,0,0,.4);
}

/* анимация */
@keyframes pulse{
  0%,100%{opacity:.22;transform:scale(1.2);}
  50%{opacity:.4;transform:scale(1.35);}
}

/* --- Кнопка «Сбросить прогресс» --- */
.game-reset-button{
    flex:2;                                     /* одинаковая ширина с range/select  */
    padding:calc(var(--construct-scale)*15px)   calc(var(--construct-scale)*25px);
    font-size:calc(var(--construct-scale)*32px);
    min-height:calc(var(--construct-scale)*45px);
    background:#4A3C31;
    color:#BA9065;
    border:calc(var(--construct-scale)*3px) solid #2D251D;
    border-radius:calc(var(--construct-scale)*7.5px);
    font-family:'FranklinGothic',serif;
    cursor:pointer;
    box-sizing:border-box;
    display:flex;align-items:center;justify-content:center;
    text-shadow:1.5px 1.5px 3px rgba(0,0,0,.5);
    transition:filter .12s,transform .12s;
}
.game-reset-button:hover   {filter:brightness(1.12);}
.game-reset-button:active  {transform:scale(.96);}

/* мобильная подстройка */
@media (max-width:950px){
    .game-reset-button{
        font-size:min(4.2vw,28px);
        padding:calc(var(--construct-scale)*12px) calc(var(--construct-scale)*20px);
    }
}