/* Подключаем шрифт Manrope с Google Fonts */
@import url('https://googleapis.com');

:root {
  /* Цвета из дизайн-гайда */
  --light-cyan: hsl(193, 38%, 86%);
  --neon-green: hsl(150, 100%, 66%);
  --grayish-blue: hsl(217, 19%, 38%);
  --dark-grayish-blue: hsl(217, 19%, 24%);
  --dark-blue: hsl(218, 23%, 16%);

  --font-main: 'Manrope', sans-serif;
}

/* Базовый сброс */
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  font-family: var(--font-main);
  background-color: var(--dark-blue);
  color: var(--light-cyan);
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  padding: clamp(1rem, 3vw, 2rem); 
}

/* ==========================================================================
   КОНТЕЙНЕР КАРТОЧКИ (Базовые адаптивные стили)
   ========================================================================== */
.advice-card {
  background-color: var(--dark-grayish-blue); 
  width: 100%;
  max-width: clamp(21.4375rem, 40vw, 33.75rem);  
  
  padding-block-start: clamp(2.5rem, 5vw, 3rem);
  padding-block-end: clamp(2.5rem, 7vw, 4.5rem);
  padding-inline: clamp(1.5rem, 5vw, 3rem);
  border-radius: clamp(0.75rem, 2vw, 0.9375rem); 
  
  position: relative; 
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

/* Номер совета */
.advice-card__id {
  color: var(--neon-green);
  font-weight: 800;
  text-transform: uppercase;
  font-size: clamp(0.75rem, 2vw, 0.8rem);
  margin-block-end: clamp(1.5rem, 4vw, 2rem);
  letter-spacing: 0.21875em; 
}

/* Текст цитаты */
.advice-card__quote {
  color: var(--light-cyan);
  font-weight: 800;
  line-height: 1.4;
  font-size: clamp(1.5rem, 3.5vw, 1.75rem); 
  margin-block-end: clamp(1.5rem, 5vw, 2.5rem);
}

/* Полоса-разделитель */
.advice-card__divider {
  width: 100%;
  margin-block-end: clamp(0rem, 3vw, 1rem); 
}

.advice-card__divider img {
  width: 100%;
  height: auto;
}

/* ==========================================================================
   КНОПКА-КУБИК И ЕЕ СОСТОЯНИЯ (Переставили фокус выше ховера)
   ========================================================================== */
.advice-card__dice-btn {
  width: 4rem;
  height: 4rem;
  background-color: var(--neon-green);
  border: none;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  
  position: absolute;
  bottom: -2rem; 
  left: 50%;
  transform: translateX(-50%); 
  
  transition: transform 0.2s, box-shadow 0.2s;
}

/* 1. Сначала идет более простой псевдокласс фокуса (1 класс + 1 псевдокласс) */
.advice-card__dice-btn:focus-visible {
  outline: 0.125rem solid var(--light-cyan);
}

/* 2. Затем идет более сложный и специфичный ховер из-за отрицания :not() */
.advice-card__dice-btn:hover:not(:disabled) {
  box-shadow: 0 0 30px var(--neon-green);
}

/* 3. Затем состояние загрузки со вложенным тегом img */
.advice-card__dice-btn--loading img {
  animation: spin 1s linear infinite;
}


/* ==========================================================================
   ДОСТУПНОСТЬ И АНИМАЦИИ
   ========================================================================== */
@media (prefers-reduced-motion: reduce) {
  .advice-card__dice-btn {
    transition: none;
  }
  .advice-card__dice-btn--loading img {
    animation: none; 
  }
}

@keyframes spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

/* ==========================================================================
   АДАПТИВ ДЛЯ БОЛЬШИХ ЭКРАНОВ
   ========================================================================== */
@media (min-width: 36em) {
  .advice-card__divider img {
    content: url("./images/pattern-divider-desktop.svg");
  }
  
  /* ИСПРАВЛЕНО: Удалили отсюда повторный ховер кнопки, так как масштаб scale(1.05) теперь плавно обрабатывается clamp-ом самой карточки */
}

/* ==========================================================================
   FOOTER
   ========================================================================== */
.attribution {
  position: absolute;
  bottom: 1rem;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
  color: var(--grayish-blue);
  width: 100%;
  
  /* ИСПРАВЛЕНО: Заменили 0.6875rem на адаптивный clamp */
  font-size: clamp(0.6875rem, 1.5vw, 0.75rem); 
}

.attribution a {
  color: var(--neon-green);
  text-decoration: none;
  font-size: clamp(0.6875rem, 1.5vw, 0.75rem);
}

.attribution a:hover {
  text-decoration: underline;
}
