.xt-auth-entry { flex: 0 0 auto; position: relative; z-index: 80; }
.xt-auth-button {
  max-width: 190px;
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 11px;
  border: 1px solid #343a35;
  border-radius: 4px;
  color: #f3f6f3;
  background: #111411;
  cursor: pointer;
}
.xt-auth-button:hover { border-color: #86efac; color: #86efac; }
.xt-auth-icon {
  width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border: 1px solid currentColor;
  border-radius: 50%;
  font: 12px ui-monospace, SFMono-Regular, Consolas, monospace;
}
.xt-auth-label { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; }

.xt-auth-dialog {
  width: min(420px, calc(100% - 28px));
  padding: 0;
  border: 1px solid #3f4740;
  border-radius: 6px;
  color: #f4f7f4;
  background: #111411;
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.55);
}
.xt-auth-dialog::backdrop { background: rgba(0, 0, 0, 0.8); backdrop-filter: blur(7px); }
.xt-auth-dialog section { padding: 32px; }
.xt-auth-close {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 34px;
  height: 34px;
  padding: 0;
  border: 1px solid #3f4740;
  border-radius: 50%;
  color: #dce2dc;
  background: #171b18;
  font-size: 21px;
  cursor: pointer;
}
.xt-auth-close:hover { border-color: #fb7185; color: #fb7185; }
.xt-auth-eyebrow { margin: 0; color: #67e8f9; font: 11px ui-monospace, SFMono-Regular, Consolas, monospace; }
.xt-auth-dialog h2 { margin: 8px 0 24px; font-size: 28px; letter-spacing: 0; }
.xt-auth-tabs { display: grid; grid-template-columns: 1fr 1fr; margin-bottom: 20px; border: 1px solid #303731; }
.xt-auth-tabs button { min-height: 42px; border: 0; color: #aab2ab; background: #171b18; cursor: pointer; }
.xt-auth-tabs button.active { color: #071008; background: #86efac; }
.xt-auth-form { display: grid; gap: 14px; }
.xt-auth-form label { display: grid; gap: 7px; color: #b8c0b9; font-size: 12px; }
.xt-auth-form input {
  width: 100%;
  min-height: 46px;
  padding: 0 12px;
  border: 1px solid #343a35;
  border-radius: 3px;
  outline: 0;
  color: #f4f7f4;
  background: #0b0d0c;
}
.xt-auth-form input:focus { border-color: #86efac; }
.xt-auth-submit,
.xt-auth-logout {
  min-height: 46px;
  border: 1px solid #86efac;
  border-radius: 3px;
  color: #071008;
  background: #86efac;
  cursor: pointer;
}
.xt-auth-submit:disabled,
.xt-auth-logout:disabled { opacity: 0.55; cursor: wait; }
.xt-auth-message { min-height: 18px; margin: -4px 0 0; color: #fb7185; font-size: 12px; }
.xt-auth-note { margin: 18px 0 0; color: #7f8881; font-size: 11px; line-height: 1.7; }
.xt-auth-profile { display: flex; align-items: center; gap: 14px; margin: 14px 0 28px; }
.xt-auth-avatar { width: 46px; height: 46px; display: grid; place-items: center; border: 1px solid #86efac; border-radius: 50%; color: #86efac; font-weight: 800; }
.xt-auth-profile div { min-width: 0; display: grid; gap: 4px; }
.xt-auth-profile small { color: #9fa8a1; overflow-wrap: anywhere; }
.xt-auth-logout { width: 100%; border-color: #fb7185; color: #fb7185; background: transparent; }

body > .xt-auth-entry { position: fixed; top: 14px; right: 14px; z-index: 80; }

@media (max-width: 1100px) {
  .site-shell > .topbar .xt-auth-label { display: none; }
  .site-shell > .topbar .xt-auth-button { width: 38px; padding: 0; justify-content: center; }
}

@media (max-width: 640px) {
  .top-actions .xt-auth-label { display: none; }
  .top-actions .xt-auth-button { width: 38px; padding: 0; justify-content: center; }
  .xt-auth-dialog section { padding: 28px 20px 24px; }
}
