/* Scoped to the existing auth layout; dashboard theme and preferences stay independent. */
html[data-coinseed-auth-entry] body:has(#root:empty) {background: #101010; color-scheme: dark;}
.coinseed-auth {
  --auth-bg: #101010;
  --auth-text: #f2f1f5;
  --auth-muted: #a7a4af;
  color-scheme: dark;
  position: relative;
  isolation: isolate;
  display: flex !important;
  flex-direction: column;
  min-height: 100svh;
  height: auto !important;
  overflow: clip;
  color: var(--auth-text);
  background: var(--auth-bg);
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', 'Microsoft YaHei', sans-serif;
  -webkit-font-smoothing: antialiased;
}
.coinseed-auth::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse 38% 38% at 31% 42%, #7060c216, transparent 90%),
    radial-gradient(ellipse 37% 45% at 68% 68%, #a85e7820, transparent 90%);
}
.coinseed-auth-brand {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  align-self: flex-start;
  margin: 30px 40px 0;
  gap: 11px !important;
  color: var(--auth-text);
  text-decoration: none;
}
.coinseed-auth-brand h1 {font-size: 18px; font-weight: 650; letter-spacing: -.5px;}
.coinseed-auth-brand img {border-radius: 0;}
.coinseed-auth-content {
  display: flex !important;
  align-items: center;
  flex: 1;
  width: 100%;
  max-width: none;
  padding: 40px 24px 68px !important;
}
.coinseed-auth-panel {
  position: relative;
  isolation: isolate;
  width: min(100%, 452px) !important;
  margin: auto;
  padding: 38px 38px 34px !important;
  border: 1px solid transparent;
  border-radius: 26px;
  background:
    linear-gradient(145deg, #1b1a20e8 2%, #17171cfa 49%, #1c1a1bf5 100%) padding-box,
    linear-gradient(125deg, #a29ee25e, #ffffff10 43%, #db9b9b3b) border-box;
  box-shadow: inset 0 1px 0 #ffffff08, 0 28px 90px #00000045, -22px 5px 80px #6f5cbb0a, 22px 40px 80px #b56c7d0a;
  backdrop-filter: blur(28px);
  -webkit-backdrop-filter: blur(28px);
}
.coinseed-auth-panel::before {
  content: '';
  position: absolute;
  pointer-events: none;
  z-index: -1;
  inset: 0;
  border-radius: inherit;
  background:
    radial-gradient(ellipse 100% 45% at 0 0, #9b8bdf12, transparent 80%),
    radial-gradient(ellipse 95% 45% at 100% 100%, #eaa0930d, transparent 85%);
}
.coinseed-auth-panel h2 {
  margin: 0;
  text-align: left !important;
  font-size: 30px;
  line-height: 1.3;
  letter-spacing: -1px;
  font-weight: 650;
  color: var(--auth-text);
}
.coinseed-auth-panel p {color: var(--auth-muted); font-size: 13px; line-height: 1.7;}
.coinseed-auth-panel h2 + p {margin-top: 10px;}
.coinseed-auth-panel > .w-full {row-gap: 26px;}
.coinseed-auth-panel .text-muted-foreground {color: var(--auth-muted);}
.coinseed-auth-panel a {color: #c8c2ef; text-underline-offset: 4px; text-decoration-thickness: 1px;}
.coinseed-auth-panel a:hover {color: #e6defc;}
.coinseed-auth-panel form {gap: 19px; grid-template-columns: minmax(0, 1fr);}
.coinseed-auth-panel label {color: #d6d3df; font-size: 13px; font-weight: 500;}
.coinseed-auth-panel input:not([type='checkbox']):not([type='hidden']) {
  min-height: 46px;
  border: 1px solid #ffffff14;
  border-radius: 11px;
  background: #0c0c1080;
  color: #f2f1f5;
  padding-inline: 13px;
  font-size: 14px;
  box-shadow: inset 0 1px 3px #00000020;
  transition: border-color 160ms, box-shadow 160ms;
}
.coinseed-auth-panel input::placeholder {color: #777480;}
.coinseed-auth-panel input:focus-visible {
  outline: none;
  border-color: #b7a9eb99;
  box-shadow: 0 0 0 3px #aa96ec16;
}
.coinseed-auth-panel input[aria-invalid='true'] {border-color: #e5949b;}
.coinseed-auth-panel [data-slot='form-message'] {color: #f2a2ab; font-size: 12px;}
.coinseed-auth-panel button[type='submit'] {
  min-height: 46px;
  margin-top: 2px;
  border: 1px solid #ece5ff25;
  border-radius: 12px;
  background: linear-gradient(105deg, #c4b8ed, #e6b9ce);
  color: #24202f;
  font-size: 14px;
  font-weight: 650;
  box-shadow: inset 0 1px 0 #ffffff40, 0 5px 22px #bf9ed412;
  transition: filter 160ms, transform 160ms, opacity 160ms;
}
.coinseed-auth-panel button[type='submit']:hover:enabled {filter: brightness(1.08);}
.coinseed-auth-panel button[type='submit']:active:enabled {transform: translateY(1px);}
.coinseed-auth-panel button[type='submit']:disabled {opacity: .36; cursor: not-allowed;}
.coinseed-auth :focus-visible {outline: 2px solid #c8b6fa; outline-offset: 4px;}
.coinseed-auth-panel button:not([type='submit']) {color: #c4bfce;}
.coinseed-auth-panel button:not([type='submit']):hover {background-color: #ffffff09; color: #fff;}
.coinseed-verification {min-width: 0;}
.coinseed-verification-note {display: flex; align-items: baseline; justify-content: space-between; gap: 10px; margin-bottom: 9px;}
.coinseed-verification-note [role='status'] {color: #9e99ad; font-size: 11px; line-height: 1.65;}
.coinseed-verification[data-verification-state='error'] [role='status'],
.coinseed-verification[data-verification-state='slow'] [role='status'] {color: #d8b8ac;}
.coinseed-verification[data-verification-state='verified'] [role='status'] {color: #a9c8b8;}
.coinseed-verification-retry {flex-shrink: 0; font-size: 11px; color: #c8c2ef !important; text-decoration: underline; text-underline-offset: 3px; border: 0; background: transparent; padding: 3px 0; cursor: pointer;}
.coinseed-turnstile {min-height: 65px; width: 100%; display: flex; justify-content: center;}
.coinseed-turnstile:empty {border-radius: 8px; background: #ffffff03; border: 1px dashed #ffffff12;}
.coinseed-turnstile iframe {max-width: 100%;}
@media (max-width: 540px) {
  .coinseed-auth-brand {margin: 24px 24px 0;}
  .coinseed-auth-content {align-items: flex-start; padding: 36px 16px 40px !important;}
  .coinseed-auth-panel {padding: 30px 20px 27px !important; border-radius: 22px;}
  .coinseed-auth-panel h2 {font-size: 28px;}
}
@media (max-width: 379px) {
  .coinseed-auth-panel {padding-inline: 12px !important;}
}
@media (max-width: 359px) {
  .coinseed-auth-content {padding-inline: 8px !important;}
  .coinseed-auth-panel {padding-inline: 8px !important;}
}
@media (prefers-reduced-motion: reduce) {
  .coinseed-auth * {transition: none !important; animation: none !important;}
}
