/* IZZY OS — Modal 'Alterar senha' (autoatendimento). Reaproveita os tokens e as
   classes de componente (.izzy-field/.izzy-label/.izzy-input/.izzy-btn/.izzy-note). */
.senha-open { overflow: hidden; }
.senha-modal[hidden] { display: none; }
.senha-note[hidden] { display: none; }

.senha-modal {
  position: fixed; inset: 0; z-index: 130; display: grid; place-items: center;
  color: var(--izzy-ink);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, system-ui, sans-serif;
}
.senha-backdrop {
  position: absolute; inset: 0; background: rgba(3, 8, 14, .68); backdrop-filter: blur(5px);
}
.senha-dialog {
  position: relative; width: min(440px, calc(100vw - 34px));
  max-height: min(720px, calc(100vh - 34px)); overflow: auto;
  border: 1.5px solid rgba(var(--izzy-rgb-slate2), .58); border-radius: 16px;
  background:
    radial-gradient(circle at 18% 0%, rgba(var(--izzy-rgb-blue), .13), transparent 42%),
    linear-gradient(180deg, var(--izzy-drawer-top) 0%, var(--izzy-drawer-bot) 100%);
  box-shadow: 0 30px 90px rgba(0, 0, 0, .52), inset 0 1px 0 rgba(255, 255, 255, .045);
}
.senha-head {
  display: flex; justify-content: space-between; align-items: flex-start; gap: 16px;
  padding: 20px 22px 14px; border-bottom: 1px solid rgba(var(--izzy-rgb-slate), .55);
}
.senha-eyebrow {
  margin: 0 0 4px; color: var(--izzy-ink-3-shell, var(--izzy-ink-3)); font-size: 10px;
  letter-spacing: .7px; text-transform: uppercase; font-weight: 850;
}
.senha-head h2 { margin: 0; font-size: 20px; letter-spacing: .1px; }
.senha-x {
  width: 34px; height: 34px; border: 1px solid rgba(var(--izzy-rgb-slate2), .58);
  border-radius: 9px; background: rgba(var(--izzy-rgb-field), .76);
  color: var(--izzy-ink-2); cursor: pointer; font-size: 18px; line-height: 1;
}
.senha-x:hover { border-color: var(--izzy-blue); color: var(--izzy-ink-hover-strong); }

.senha-note { margin: 14px 22px 0; }
.senha-body { display: grid; gap: 14px; padding: 16px 22px 4px; }
.senha-field { gap: 6px; }

.senha-input-wrap { position: relative; display: flex; align-items: center; }
.senha-input-wrap .izzy-input { width: 100%; padding-right: 42px; }
.senha-eye {
  position: absolute; right: 6px; display: inline-flex; align-items: center; justify-content: center;
  width: 30px; height: 30px; padding: 0; border: 0; border-radius: 8px; cursor: pointer;
  background: transparent; color: var(--izzy-ink-3);
}
.senha-eye:hover { color: var(--izzy-ink); background: var(--izzy-bg-3); }
.senha-eye:focus-visible { outline: 2px solid var(--izzy-blue); outline-offset: 1px; }
.senha-eye svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.senha-eye.is-on { color: var(--izzy-blue); }

.senha-foot {
  display: flex; justify-content: flex-end; gap: 10px;
  padding: 16px 22px 20px;
}

@media (prefers-reduced-motion: reduce) {
  .senha-backdrop { backdrop-filter: none; }
}
