/* dtusernamelogin – popup σύνδεσης */
.dtlp-lock, .dtlp-lock body { overflow: hidden; }
.dtlp-overlay {
  position: fixed; inset: 0; z-index: 100000; display: flex; align-items: center; justify-content: center;
  padding: 16px; background: rgba(15, 23, 42, .55); animation: dtlp-fade .15s ease-out;
}
.dtlp-overlay[hidden] { display: none; }
.dtlp-box {
  position: relative; width: 100%; max-width: 400px; max-height: calc(100vh - 32px); overflow: auto;
  background: #fff; border-radius: 10px; padding: 26px 26px 20px; box-shadow: 0 20px 50px rgba(0, 0, 0, .25);
  animation: dtlp-up .18s ease-out;
}
.dtlp-close {
  position: absolute; top: 8px; right: 10px; width: 36px; height: 36px; border: 0; background: none;
  font-size: 26px; line-height: 1; color: #6b7280; cursor: pointer; border-radius: 50%;
}
.dtlp-close:hover, .dtlp-close:focus-visible { background: #f3f4f6; color: #111827; outline: none; }
.dtlp-title { margin: 0 0 4px; font-size: 20px; font-weight: 700; text-transform: none; color: #111827; }
.dtlp-sub { margin: 0 0 16px; font-size: 13px; color: #6b7280; }
.dtlp-form { display: flex; flex-direction: column; }
.dtlp-label { display: block; margin: 10px 0 4px; font-size: 13px; font-weight: 600; color: #374151; text-transform: none; text-align: left !important; }
.dtlp-title, .dtlp-sub, .dtlp-error { text-align: left; }
.dtlp-input { height: 42px; border-radius: 6px !important; font-size: 15px; }
.dtlp-pass-wrap { position: relative; }
.dtlp-pass-wrap .dtlp-input { padding-right: 44px; }
.dtlp-eye {
  position: absolute; top: 0; right: 0; width: 42px; height: 42px; border: 0; background: none; cursor: pointer; color: #6b7280;
}
.dtlp-eye::before {
  content: ''; display: block; width: 20px; height: 20px; margin: auto; background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / contain no-repeat;
}
.dtlp-eye.is-on { color: var(--dt-cart-bg, #00a6d6); }
.dtlp-forgot { align-self: flex-end; margin: 8px 0 14px; font-size: 13px; color: var(--dt-cart-bg, #00a6d6) !important; }
.dtlp-submit {
  height: 44px; border: 0; border-radius: 6px; cursor: pointer; font-size: 15px; font-weight: 600; color: #fff;
  background: linear-gradient(180deg, var(--dt-cart-bg, #00a6d6) 0%, color-mix(in srgb, var(--dt-cart-bg, #00a6d6) 80%, #000) 100%);
  box-shadow: 0 2px 6px color-mix(in srgb, var(--dt-cart-bg, #00a6d6) 35%, transparent);
}
.dtlp-submit:hover, .dtlp-submit:focus-visible { filter: brightness(1.07); outline: none; }
.dtlp-submit:disabled { opacity: .7; cursor: wait; }
.dtlp-error { background: #fdf2f2; border: 1px solid #f5c2c2; color: #b91c1c; border-radius: 6px; padding: 8px 12px; font-size: 13px; margin-bottom: 4px; }
.dtlp-error[hidden] { display: none; }
.dtlp-foot { margin: 16px 0 0; padding-top: 14px; border-top: 1px solid #e5e7eb; text-align: center; font-size: 14px; color: #374151; }
.dtlp-foot a { font-weight: 600; color: var(--dt-cart-bg, #00a6d6) !important; }
@keyframes dtlp-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes dtlp-up { from { transform: translateY(12px); opacity: 0; } to { transform: none; opacity: 1; } }
@media (max-width: 575px) {
  .dtlp-overlay { padding: 0; align-items: stretch; }
  .dtlp-box { max-width: none; max-height: none; border-radius: 0; padding-top: 48px; }
}
