/* AKNO kiosk — кнопки из Designs/Buttons.txt + цвета из akno-tokens.css */

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--btn-gap);
  box-sizing: border-box;
  font-family: inherit;
  font-size: var(--btn-font-size);
  line-height: var(--btn-line-height);
  font-weight: var(--btn-font-weight);
  border-radius: var(--btn-radius);
  min-height: var(--btn-height-md);
  padding: 0 var(--btn-padding-x);
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease, filter 0.2s ease;
}

.btn-lg {
  min-height: var(--btn-height-lg);
  padding: 0 var(--btn-padding-x-lg);
  font-size: var(--btn-font-size-lg);
}

.btn-primary {
  background: var(--accent-gradient);
  border: none;
  color: #fff;
  font-weight: var(--btn-font-weight);
}

.btn-primary:hover:not(:disabled) {
  filter: brightness(0.96);
  box-shadow: var(--btn-shadow-warm);
}

.btn-primary:disabled,
.btn-secondary:disabled,
.btn-outline-primary:disabled,
.btn-success:disabled {
  opacity: var(--btn-disabled-opacity);
  cursor: not-allowed;
  box-shadow: none;
  filter: none;
}

.btn-secondary {
  background: var(--btn-secondary-bg);
  border: 1px solid var(--btn-secondary-border);
  color: var(--text);
  font-weight: var(--btn-font-weight);
}

.btn-secondary:hover:not(:disabled) {
  background: #ececec;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.btn-outline-primary {
  background: transparent;
  border: 2px solid var(--accent);
  color: var(--accent);
  font-weight: var(--btn-font-weight);
}

.btn-outline-primary:hover:not(:disabled) {
  background: rgba(229, 103, 42, 0.08);
  box-shadow: 0 2px 8px rgba(229, 103, 42, 0.15);
}

/* Успех / оплата — зелёный, не из палитры кнопок Primary */
.btn-success {
  background: linear-gradient(135deg, var(--success), #215e43);
  border: none;
  color: #fff;
  font-weight: var(--btn-font-weight);
}

.btn-success:hover:not(:disabled) {
  filter: brightness(0.97);
  box-shadow: 0 8px 20px rgba(47, 125, 91, 0.28);
}

.btn:focus-visible,
.btn:focus:not(:focus-visible) {
  outline: none;
}

.btn:focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(229, 103, 42, 0.35);
}

.btn-success:focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(47, 125, 91, 0.35);
}
