.ha-auth{max-width:440px;margin-inline:auto}
.ha-auth-title{font-size:var(--fs-4,1.6rem);font-weight:850;margin:0 0 6px}
.ha-auth-sub{color:var(--ink-2,#3C4256);margin:0 0 18px;line-height:1.8}
.ha-auth-form label{display:block;font-weight:700;margin:0 0 6px;font-size:.95rem}
.ha-input{width:100%;min-height:52px;padding:0 16px;border:1.5px solid var(--line-2,#D9D2C7);border-radius:14px;font:inherit;font-size:1.1rem;background:#fff;color:inherit;transition:border-color .15s,box-shadow .15s}
.ha-input:focus{outline:0;border-color:var(--orange,#F26F1A);box-shadow:0 0 0 4px rgba(242,111,26,.15)}
.ha-code{font-size:1.9rem;letter-spacing:.6em;text-align:center;font-weight:800;padding-inline-start:.9em}
.ha-help{min-height:1.4em;margin:6px 0 10px;font-size:.9rem;color:var(--muted,#6B7285)}
.ha-help.is-error{color:#D63B3B;font-weight:700}
.ha-auth-error{background:#FDECEC;color:#B12E2E;padding:10px 14px;border-radius:12px;font-weight:700;margin:0 0 14px}
.ha-gift{margin:8px 0 14px}.ha-gift summary{cursor:pointer;color:var(--orange-deep,#D4530A);font-weight:700;list-style:none}.ha-gift summary::-webkit-details-marker{display:none}.ha-gift label{margin-top:10px}
.ha-or{display:flex;align-items:center;gap:12px;color:var(--muted,#6B7285);margin:16px 0;font-size:.9rem}.ha-or::before,.ha-or::after{content:"";flex:1;height:1px;background:var(--line,#E7E1D8)}
.ha-google svg{flex:none}
.ha-legal{font-size:.82rem;color:var(--muted,#6B7285);margin:14px 0 0}.ha-legal a{text-decoration:underline}
.ha-link{background:none;border:0;padding:0;color:var(--orange-deep,#D4530A);font:inherit;font-weight:700;cursor:pointer}.ha-link:disabled{color:var(--muted,#6B7285);cursor:default}
.ha-resend{margin:12px 0 0;text-align:center;font-size:.9rem}
.ha-demo{background:#FFF1E8;color:#D4530A;padding:8px 12px;border-radius:10px;font-weight:700;direction:rtl}.ha-demo code{font-size:1.2rem;letter-spacing:.2em}
.ha-done{text-align:center}.ha-done img{margin:0 auto 10px}
.ha-modal{position:fixed;inset:0;z-index:90;background:rgba(14,26,58,.55);display:grid;place-items:center;padding:16px}
.ha-modal[hidden]{display:none}
.ha-modal-card{position:relative;width:min(100%,460px);max-height:92vh;overflow:auto;border-radius:24px;padding:28px 24px 24px;background:#fff}
.ha-modal-close{position:absolute;top:10px;left:10px}
.ha-auth.is-compact .ha-auth-title{font-size:1.35rem}
