﻿/* Auth — Palette Coral đậm cam hơn (ý tưởng 2) */
:root {
  --primary-color: #ff8533;
  --primary-dark: #e86f1f;
  --primary-soft: #ffe8d6;
  --surface: #ffffff;
  --text-primary: #1d130c;
  --text-secondary: #6b7280;
  --text-muted: #9ca3af;
  --border-color: #ffd2b0;
  --page-base: #fff3e8;
  --page-top: #ffd9bf;
}

html {
  min-height: 100%;
  background: #fff3e8 !important;
}

html,
body {
  background-color: #fff3e8 !important;
  background-image:
    radial-gradient(ellipse 95% 45% at 0% 0%, rgba(255, 133, 51, 0.45) 0%, transparent 62%),
    radial-gradient(ellipse 95% 45% at 100% 0%, rgba(255, 133, 51, 0.45) 0%, transparent 62%),
    radial-gradient(ellipse 120% 40% at 50% 0%, rgba(255, 160, 90, 0.35) 0%, transparent 55%),
    linear-gradient(180deg, #ffd9bf 0%, #ffe8d6 22%, #fff3e8 45%, #fffaf7 70%, #ffffff 100%) !important;
  background-attachment: fixed !important;
  background-repeat: no-repeat !important;
}

body {
  font-family: "Be Vietnam Pro", "Segoe UI", sans-serif !important;
  color: var(--text-primary);
  min-height: 100vh;
  min-height: 100dvh;
  margin: 0 !important;
  padding: 0 !important;
}

.auth-page {
  background: transparent !important;
}

.auth-container {
  background: #ffffff !important;
  border: 1px solid #ffd4b8 !important;
  border-radius: 20px !important;
  box-shadow:
    0 0 0 6px rgba(255, 232, 214, 0.85),
    0 8px 24px rgba(232, 111, 31, 0.12),
    0 24px 48px rgba(29, 19, 12, 0.08) !important;
}

html,
body {
  background-color: #fffaf7 !important;
  background-image:
    radial-gradient(ellipse 90% 40% at 0% 0%, rgba(255, 180, 140, 0.28) 0%, transparent 60%),
    radial-gradient(ellipse 90% 40% at 100% 0%, rgba(255, 180, 140, 0.28) 0%, transparent 60%),
    linear-gradient(180deg, #fff0e6 0%, #fffaf7 35%, #ffffff 100%) !important;
  background-attachment: fixed !important;
  background-repeat: no-repeat !important;
}

.logo-txt {
  color: #ff8533 !important;
}

.auth-header h5 {
  color: #1d130c !important;
}

.btn-primary {
  background: linear-gradient(135deg, #ff8533 0%, #e86f1f 100%) !important;
  border-color: transparent !important;
  color: #ffffff !important;
  box-shadow: 0 8px 20px rgba(255, 133, 51, 0.32) !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
  background: linear-gradient(135deg, #e86f1f 0%, #ff8533 100%) !important;
  border-color: transparent !important;
  color: #ffffff !important;
  outline: none !important;
  box-shadow: 0 10px 26px rgba(255, 133, 51, 0.4) !important;
}

.form-control {
  border-color: #ffd2b0 !important;
  background: #fffaf7 !important;
}

.form-control:focus {
  border-color: #ff8533 !important;
  box-shadow: 0 0 0 3px rgba(255, 133, 51, 0.2) !important;
  outline: none !important;
  background: #ffffff !important;
}

.form-control.is-invalid {
  border-color: #ff8533 !important;
  box-shadow: none !important;
}

.forgot-link,
.register-link,
.auth-link,
a.register-link,
a.forgot-link,
.login-link a {
  color: #ff8533 !important;
  outline: none !important;
  box-shadow: none !important;
  text-decoration: none;
  font-weight: 700;
}

.forgot-link:hover,
.register-link:hover,
.auth-link:hover,
.login-link a:hover {
  color: #e86f1f !important;
}

.forgot-link:focus,
.forgot-link:focus-visible,
.forgot-link:active,
.register-link:focus,
.register-link:focus-visible,
.register-link:active,
.login-link a:focus,
.login-link a:focus-visible,
.login-link a:active {
  outline: none !important;
  box-shadow: none !important;
}

/* Step đăng ký: chưa làm = xám cam nhạt; đang làm = cam; đã xong = xanh */
.step-nav .step-dot {
  background: #ffe8d6 !important;
  border-color: #ffc090 !important;
  color: #e86f1f !important;
}

.step-nav li.active .step-dot {
  background: #ff8533 !important;
  border-color: #ff8533 !important;
  color: #ffffff !important;
}

.step-nav li.active .step-label {
  color: #ff8533 !important;
}

.step-nav li.done .step-dot {
  background: #10b981 !important;
  border-color: #059669 !important;
  color: #ffffff !important;
}

.step-nav li.done .step-label {
  color: #059669 !important;
}

/* Đường nối giữa các bước */
.step-nav li:not(:last-child)::after {
  content: '';
  position: absolute;
  top: 14px;
  left: calc(50% + 16px);
  right: calc(-50% + 16px);
  height: 3px;
  background: #ffd2b0;
  border-radius: 2px;
  z-index: 0;
  pointer-events: none;
}

.step-nav li.done:not(:last-child)::after {
  background: #10b981;
}

.step-nav li.active:not(:last-child)::after {
  background: #ff8533;
}

.step-nav .step-dot {
  position: relative;
  z-index: 1;
}

.btn-outline-step {
  border-color: #ff8533 !important;
  color: #ff8533 !important;
  background: #fff4eb !important;
}

.btn-outline-step:hover {
  background: #ff8533 !important;
  color: #ffffff !important;
}
