/* Pagini autentificare — layout mockup TDV (#F8F9FA / #FFB800 / #111827 / #001529) */

#pixi-site-root[data-page-slug="login"],
#pixi-site-root[data-page-slug="register"] {
  background: #f8f9fa;
}

.tdv-auth {
  font-family:
    ui-sans-serif,
    system-ui,
    "Inter",
    "Segoe UI",
    Roboto,
    "Helvetica Neue",
    Arial,
    sans-serif;
  color: #001529;
  padding: 20px 0 56px;
}

.tdv-auth__breadcrumb {
  width: min(1180px, 100%);
  margin: 0 auto 18px;
  padding: 0 20px;
  font-size: 13px;
  color: #5c6b7a;
}

.tdv-auth__breadcrumb a {
  color: #001529;
  font-weight: 600;
  text-decoration: none;
}

.tdv-auth__breadcrumb a:hover {
  color: #ffb800;
}

.tdv-auth__sep {
  margin: 0 8px;
  color: #adb5bd;
}

.tdv-auth__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  gap: 24px;
  width: min(1180px, 100%);
  margin: 0 auto;
  padding: 0 20px;
  align-items: start;
}

.tdv-auth__aside {
  background: #fff;
  border-radius: 16px;
  border: 1px solid #e9ecef;
  padding: clamp(22px, 4vw, 32px);
  box-shadow:
    0 1px 3px rgba(0, 21, 41, 0.04),
    0 16px 40px rgba(0, 21, 41, 0.06);
}

.tdv-auth__aside-visual {
  display: grid;
  place-items: center;
  min-height: 160px;
  margin-bottom: 18px;
  border-radius: 14px;
  background: linear-gradient(145deg, #fff9ed 0%, #f1f5f9 55%, #e8eef5 100%);
  border: 1px dashed rgba(0, 21, 41, 0.06);
}

.tdv-auth__aside-visual > .fa-store {
  font-size: clamp(52px, 10vw, 72px);
  color: rgba(255, 184, 0, 0.85);
}

.tdv-auth__aside h2 {
  margin: 0 0 12px;
  font-size: clamp(20px, 2.8vw, 26px);
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.2;
}

.tdv-auth__aside-lead {
  margin: 0 0 18px;
  font-size: 14px;
  line-height: 1.58;
  color: #5c6b7a;
}

.tdv-auth__benefits {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.tdv-auth__benefits li {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  font-size: 14px;
  line-height: 1.45;
}

.tdv-auth__benefits li i {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 193, 7, 0.16);
  color: #d97706;
  font-size: 15px;
}

.tdv-auth__aside-note {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  margin-top: 20px;
  padding-top: 16px;
  border-top: 1px solid #e9ecef;
  font-size: 12px;
  color: #5c6b7a;
  line-height: 1.5;
}

.tdv-auth__aside-note i {
  color: #f59e0b;
  margin-top: 3px;
}

.tdv-auth__panel-wrap {
  min-width: 0;
}

.tdv-auth__panel {
  background: #fff;
  border-radius: 16px;
  border: 1px solid #e9ecef;
  padding: clamp(22px, 4vw, 32px);
  box-shadow:
    0 1px 3px rgba(0, 21, 41, 0.04),
    0 16px 44px rgba(0, 21, 41, 0.07);
}

.tdv-auth__panel h1 {
  margin: 0 0 6px;
  font-size: 24px;
  font-weight: 800;
  letter-spacing: -0.02em;
}

.tdv-auth__panel-sub {
  margin: 0 0 22px;
  font-size: 14px;
  color: #5c6b7a;
  line-height: 1.5;
}

/* Stepper register */
.tdv-auth__steps {
  display: flex;
  gap: 0;
  justify-content: space-between;
  margin-bottom: 24px;
  padding: 0;
  border-radius: 12px;
  background: #f8f9fa;
  overflow: hidden;
  border: 1px solid #e9ecef;
}

.tdv-auth__step {
  flex: 1;
  padding: 10px 12px;
  font-size: 11px;
  font-weight: 700;
  text-align: center;
  color: #5c6b7a;
  border-right: 1px solid #e9ecef;
}

.tdv-auth__step:last-child {
  border-right: 0;
}

.tdv-auth__step.is-active {
  background: rgba(255, 193, 7, 0.22);
  color: #0f172a;
}

.tdv-auth__step.is-muted {
  opacity: 0.65;
}

.tdv-auth__alerts .alert {
  margin-bottom: 16px;
  padding: 12px 14px;
  border-radius: 12px;
  font-size: 14px;
}

/* Vendor promo cards (login/register) */
.tdv-auth__vendor-cta{
  display:flex;
  gap:14px;
  align-items:flex-start;
  margin:0 0 14px;
  padding:16px 16px;
  border-radius:18px;
  background:
    radial-gradient(900px 260px at 0% 0%, rgba(245,158,11,.22), rgba(255,255,255,0) 60%),
    linear-gradient(135deg, rgba(17,24,39,.04), rgba(255,255,255,.96));
  border:1px solid rgba(15,23,42,.12);
  box-shadow:0 16px 44px rgba(15,23,42,.10);
}
.tdv-auth__vendor-cta-ico{
  width:46px;height:46px;border-radius:16px;
  background:linear-gradient(135deg,#f59e0b,#ea580c);
  color:#111827;
  display:flex;align-items:center;justify-content:center;
  flex:0 0 auto;
  box-shadow:0 14px 28px rgba(234,88,12,.25);
}
.tdv-auth__vendor-cta-title{
  margin:0 0 6px;
  font-weight:900;
  font-size:1.06rem;
  color:#0b1f3d;
  letter-spacing:-.01em;
}
.tdv-auth__vendor-cta-desc{
  margin:0 0 10px;
  color:#334e73;
  font-weight:650;
  line-height:1.45;
}
.tdv-auth__vendor-cta-btn{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:12px 16px;
  border-radius:14px;
  font-weight:950;
  text-decoration:none;
  background:linear-gradient(135deg,#f59e0b,#ea580c);
  color:#111827;
  border:1px solid rgba(234,88,12,.35);
  box-shadow:0 18px 34px rgba(234,88,12,.22);
  transition:transform .16s ease, filter .16s ease, box-shadow .16s ease;
}
.tdv-auth__vendor-cta-btn:hover{filter:brightness(1.04);box-shadow:0 22px 40px rgba(234,88,12,.26);transform:translateY(-1px)}
.tdv-auth__vendor-cta-btn:active{transform:translateY(0)}

/* Plan cards register */
.tdv-auth__plans-title {
  font-size: 13px;
  font-weight: 800;
  margin: 4px 0 10px;
}

.tdv-auth__plans-hint {
  font-size: 12px;
  color: #5c6b7a;
  margin: 0 0 12px;
}

.tdv-auth__plans--embedded {
  margin-bottom: 18px;
}

.tdv-auth__plans {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 18px;
}

.tdv-auth__plan {
  display: block;
  cursor: pointer;
}

.tdv-auth__plan-input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  margin: 0;
}

.tdv-auth__plan-face {
  display: block;
  border-radius: 12px;
  border: 2px solid #e9ecef;
  padding: 14px;
  background: #fff;
  transition:
    border-color 0.15s ease,
    box-shadow 0.15s ease;
}

.tdv-auth__plan:focus-within .tdv-auth__plan-face,
.tdv-auth__plan-input:checked + .tdv-auth__plan-face {
  border-color: #ffb800;
  box-shadow: 0 0 0 3px rgba(255, 193, 7, 0.22);
}

.tdv-auth__plan-heading {
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: 800;
  font-size: 13px;
  margin-bottom: 4px;
}

.tdv-auth__plan-desc {
  font-size: 12px;
  color: #5c6b7a;
  line-height: 1.38;
}

.tdv-auth__form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px 14px;
}

.tdv-auth__field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.tdv-auth__field--full {
  grid-column: 1 / -1;
}

.tdv-auth__field > span:first-child {
  font-size: 12px;
  font-weight: 700;
  color: #001529;
}

.tdv-auth__field input:not([type="checkbox"]),
.tdv-auth__field select {
  width: 100%;
  padding: 11px 12px;
  border-radius: 10px;
  border: 1px solid #ced4da;
  font-size: 14px;
  background: #fff;
  /* Override global main.css `input { color: #f5f6fa }` on light backgrounds */
  color: #111827;
  caret-color: #111827;
}

.tdv-auth__field input::placeholder {
  color: #6c757d;
  opacity: 1;
}

.tdv-auth__field input:-webkit-autofill,
.tdv-auth__field input:-webkit-autofill:hover,
.tdv-auth__field input:-webkit-autofill:focus {
  -webkit-text-fill-color: #111827;
  caret-color: #111827;
  box-shadow: 0 0 0 1000px #fff inset;
  transition: background-color 99999s ease-out 0s;
}

.tdv-auth__field input:focus,
.tdv-auth__field select:focus {
  outline: none;
  border-color: #ffb800;
  box-shadow: 0 0 0 3px rgba(255, 184, 0, 0.2);
}

.tdv-auth__phone-row {
  display: flex;
  gap: 10px;
  align-items: stretch;
}

.tdv-auth__phone-row select {
  flex: 0 0 110px;
}

.tdv-auth__phone-row input {
  flex: 1;
  color: #111827;
  caret-color: #111827;
  background: #fff;
}

.tdv-auth__phone-row select {
  color: #111827;
  background: #fff;
}

.tdv-auth .password-field {
  display: flex;
  align-items: stretch;
  border: 1px solid #ced4da;
  border-radius: 10px;
  overflow: hidden;
  background: #fff;
}

.tdv-auth .password-field:focus-within {
  border-color: #ffb800;
  box-shadow: 0 0 0 3px rgba(255, 184, 0, 0.18);
}

.tdv-auth .password-field input[data-password-input] {
  flex: 1;
  border: none;
  padding: 11px 12px;
  font-size: 14px;
  min-width: 0;
  color: #111827;
  caret-color: #111827;
  background: #fff;
}

.tdv-auth .password-field input[data-password-input]::placeholder {
  color: #6c757d;
}

.tdv-auth .password-field input[data-password-input]:-webkit-autofill,
.tdv-auth .password-field input[data-password-input]:-webkit-autofill:hover,
.tdv-auth .password-field input[data-password-input]:-webkit-autofill:focus {
  -webkit-text-fill-color: #111827;
  box-shadow: 0 0 0 1000px #fff inset;
  transition: background-color 99999s ease-out 0s;
}

.tdv-auth .password-toggle {
  border: none;
  background: #f8f9fa;
  padding: 0 12px;
  cursor: pointer;
  color: #495057;
}

.tdv-auth__hint {
  font-size: 11px;
  color: #5c6b7a;
  margin: -4px 0 18px;
  line-height: 1.42;
}

/* Blochează regula globală `main.css label span { display:block; color: rgba… alb }`
   care făcea textul invizibil pe fundal alb și arunca linkurile vizibile într-o legătură ciudată. */
.tdv-auth label.tdv-auth__terms {
  display: grid;
  grid-template-columns: 1.125rem minmax(0, 1fr);
  gap: 0.625rem 0.75rem;
  align-items: start;
  margin: 6px 0 18px;
  padding: 0.75rem 0.875rem;
  font-size: 13px;
  line-height: 1.55;
  background: #f8fafc;
  border: 1px solid #e9ecef;
  border-radius: 10px;
  cursor: pointer;
}

.tdv-auth label.tdv-auth__terms:hover {
  border-color: #dde2e8;
}

.tdv-auth label.tdv-auth__terms:focus-within {
  border-color: #ced4da;
  box-shadow: 0 0 0 2px rgba(255, 193, 7, 0.22);
}

.tdv-auth label.tdv-auth__terms .tdv-auth__terms-input {
  width: 1.125rem;
  height: 1.125rem;
  margin: 0.2rem 0 0;
  flex-shrink: 0;
  accent-color: #ffb800;
  cursor: pointer;
  align-self: start;
}

.tdv-auth label.tdv-auth__terms .tdv-auth__terms-copy {
  display: inline;
  margin: 0 !important;
  padding: 0;
  font-size: inherit !important;
  line-height: inherit;
  font-weight: 500;
  color: #495057 !important;
}

.tdv-auth label.tdv-auth__terms .tdv-auth__terms-link {
  color: #0f172a;
  font-weight: 700;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  white-space: normal;
}

.tdv-auth label.tdv-auth__terms .tdv-auth__terms-link:hover {
  color: #92400e;
}

.tdv-auth__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  padding: 14px 18px;
  border: none;
  border-radius: 12px;
  font-size: 15px;
  font-weight: 800;
  cursor: pointer;
  background: linear-gradient(180deg, #ffc107, #ffb800);
  color: #111827;
  box-shadow: 0 6px 20px rgba(255, 193, 7, 0.35);
  transition:
    transform 0.14s ease,
    filter 0.14s ease;
}

.tdv-auth__submit:hover {
  transform: translateY(-1px);
  filter: brightness(1.02);
}

.tdv-auth__divider {
  text-align: center;
  margin: 18px 0 12px;
  font-size: 12px;
  color: #868e96;
  font-weight: 600;
}

.tdv-auth__social-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
}

.tdv-auth__social {
  flex: 1 1 auto;
  min-width: 100px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid #ced4da;
  background: #fff;
  font-size: 13px;
  font-weight: 700;
  color: #495057;
  cursor: not-allowed;
  opacity: 0.65;
}

.tdv-auth__social-note {
  text-align: center;
  margin-top: 10px;
  font-size: 11px;
  color: #868e96;
}

.tdv-auth__footer-links {
  text-align: center;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid #e9ecef;
  font-size: 14px;
  color: #5c6b7a;
}

.tdv-auth__footer-links a {
  color: #001529;
  font-weight: 800;
}

.tdv-auth__footer-links a:hover {
  color: #ffb800;
}

.tdv-auth__resend {
  margin-top: 14px;
}

.tdv-auth__resend .auth-resend-btn {
  background: transparent;
  border: 1px dashed #adb5bd;
  color: #495057;
  font-size: 13px;
  padding: 8px 12px;
  border-radius: 10px;
  cursor: pointer;
  width: 100%;
}

.tdv-auth__resend .auth-resend-btn:hover {
  border-color: #ffb800;
  color: #001529;
}

@media (max-width: 940px) {
  .tdv-auth__grid {
    grid-template-columns: 1fr;
  }

  .tdv-auth__form-grid {
    grid-template-columns: 1fr;
  }

  .tdv-auth__field--full {
    grid-column: auto;
  }

  .tdv-auth__plans {
    grid-template-columns: 1fr;
  }

  .tdv-auth__step {
    font-size: 10px;
    padding-inline: 6px;
  }
}
