/* Auth/Login page - ธีมโทนชมพูให้สอดคล้องหน้าหลัก */
:root {
  --auth-primary: #db2777;
  --auth-primary-dark: #be185d;
  --auth-primary-light: #f472b6;
  --auth-gradient: linear-gradient(135deg, #f9a8d4 0%, #f472b6 30%, #ec4899 60%, #db2777 100%);
  --auth-bg: #fdf2f8;
}
body.login-page, .login-page {
  font-family: 'Prompt', 'Segoe UI', Tahoma, 'Noto Sans Thai', 'Helvetica Neue', Arial, sans-serif !important;
  background: var(--auth-bg) !important;
}
body.login-page .login-box {
  background: transparent;
}
.page-title {
  font-size: 22px;
  font-weight: 700;
  color: var(--auth-primary-dark);
}


/* Two-column layout mimicking screenshot: left gradient sidebar menu + right form */
/* When using main-login layout, show only center column */
.auth-page.login-only{ grid-template-columns: 1fr; }
.auth-page.login-only .auth-sidebar{ display:none; }
.auth-main.full{ min-height: 100vh; padding: 48px 16px; }

.auth-page {
  display: grid;
  grid-template-columns: 260px 1fr;
  min-height: calc(100vh - 57px); /* under fixed navbar */
}

/* Left pseudo-sidebar */
.auth-sidebar {
  background: linear-gradient(180deg, #0b0b0b 0%, #7c153f 30%, #c2185b 65%, #e91e63 100%);
  color: #fff;
  padding: 12px 8px;
}
.auth-sidebar .brand {
  padding: 4px 8px 12px 8px;
/* Fix top theme bar spacing under fixed navbar */
.layout-navbar-fixed .content-wrapper { padding-top: 24px; }

/* Clickable menu items on left panel */
.menu .menu-item{ display:flex; align-items:center; gap:10px; color:#fff; text-decoration:none; width:100%; }
.menu .menu-item:hover{ text-decoration:none; opacity:.95; }

}
.auth-sidebar .brand-title { font-weight: 700; }
.auth-sidebar .brand-sub { opacity: .85; font-size: 13px; }
.auth-sidebar .menu { list-style: none; padding: 0; margin: 8px 0 0; }
.auth-sidebar .menu li {
  display: flex; align-items: center; gap: 10px;
  background: rgba(255,255,255,0.1); border-radius: 8px;
  padding: 10px 12px; margin-bottom: 10px;
}
.auth-sidebar .menu li i { width: 18px; text-align: center; }

/* Right main area */
.auth-main {
  display: flex; align-items: center; justify-content: center;
  padding: 40px 16px;
  min-height: calc(100vh - 57px);
}
.bg-gradient { background: var(--auth-gradient); }

/* Card size */
.auth-card { width: 100%; max-width: 540px; }

/* Inputs */
#login-form .form-control { height: 48px; }
.auth-input-group .form-control { height: 48px; }
.password-toggle { position: absolute; right: 14px; top: 50%; transform: translateY(-50%); border: 0; background: transparent; color: #6b7280; padding: 0.5rem; }
.password-toggle:hover { color: #111827; }

/* Responsive: collapse left column on small screens */
@media (max-width: 992px){
  .auth-page { grid-template-columns: 1fr; }
  .auth-sidebar { display: none; }
}

/* Card - เงาโทนชมพูอ่อน */
.auth-card.card {
  border-radius: 24px !important;
  box-shadow: 0 4px 24px rgba(219, 39, 119, 0.12), 0 1.5px 6px rgba(0,0,0,0.06);
  border: 1px solid rgba(244, 114, 182, 0.2);
  margin: 0 auto;
  padding: 0;
}
/* Card header: ช่องว่างระหว่างปุ่ม/ลิงก์ */
.auth-card .card-header.auth-card-header {
  border-radius: 24px 24px 0 0 !important;
  padding: 1.25rem 1.5rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.25rem;
}
.auth-card-header-left {
  display: flex;
  align-items: center;
  gap: 0.6rem;
}
.auth-card-header-back {
  padding: 0.4rem 0.75rem;
  border-radius: 12px;
  text-decoration: none;
  white-space: nowrap;
}
.auth-card-header-back:hover { color: #fff !important; opacity: 0.95; }

.auth-card .card-body {
  border-radius: 0 0 24px 24px !important;
  padding: 2rem 1.5rem 1.5rem 1.5rem;
}

/* ช่องว่างระหว่าง label กับ input */
.auth-form-label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 600;
  color: #831843;
}

/* ช่องว่างระหว่างแต่ละ form group */
.auth-form-group {
  margin-bottom: 1.35rem;
}

/* ช่องว่างระหว่าง icon กับช่อง input - โทนชมพูอ่อน */
.auth-input-group .input-group-text.auth-input-icon {
  min-width: 52px;
  padding: 0 1rem;
  justify-content: center;
  border-radius: 16px 0 0 16px;
  background: #fce7f3;
  border-color: #fbcfe8;
  color: var(--auth-primary-dark);
}
.auth-input-group .auth-form-control,
.auth-input-group .form-control {
  padding-left: 1rem;
  border-radius: 0 16px 16px 0;
  border-left: 0;
}
.auth-input-group .input-group-prepend .input-group-text {
  border-right: 0;
}

.auth-submit-wrap {
  margin-top: 1.5rem;
}
.auth-links {
  margin-top: 1.25rem;
}
.auth-links a {
  text-decoration: none;
  color: var(--auth-primary);
  font-weight: 500;
}
.auth-links a:hover {
  text-decoration: underline;
  color: var(--auth-primary-dark);
}

/* ปุ่มเข้าสู่ระบบ - gradient ชมพู */
#login-form .btn-gradient,
.auth-card .btn-primary.btn-gradient {
  background: var(--auth-gradient) !important;
  border: none !important;
  color: #fff !important;
  box-shadow: 0 2px 8px rgba(219, 39, 119, 0.35);
}
#login-form .btn-gradient:hover,
.auth-card .btn-primary.btn-gradient:hover {
  background: linear-gradient(135deg, #f472b6 0%, #db2777 100%) !important;
  color: #fff !important;
  box-shadow: 0 4px 12px rgba(219, 39, 119, 0.4);
}

/* Make form and button more mobile friendly */
#login-form .form-control {
  border-radius: 16px;
  font-size: 1.1rem;
}
#login-form .btn {
  border-radius: 16px;
  font-size: 1.1rem;
  padding: 0.75rem 0;
}

/* Responsive: card width and padding */
@media (max-width: 600px) {
  .auth-card.card {
    max-width: 98vw;
    padding: 0;
  }
  .auth-main.full {
    padding: 16px 2px;
  }
  .auth-card .card-body {
    padding: 1.25rem 0.5rem 1rem 0.5rem;
  }
  .auth-card .card-header {
    padding: 1rem 0.5rem;
  }
  .page-title {
    font-size: 1.2rem;
  }
}

