.ha-backdrop{position: fixed;inset: 0;z-index: 1000;display: grid;grid-template-columns: minmax(0, 1fr);grid-template-rows: minmax(0, 1fr);place-items: center;padding: 24px;background: #05091499;backdrop-filter: blur(6px);}.ha-modal{--ha-surface: var(--ff-card);position: relative;width: min(440px, 100%);min-width: 0;background: var(--ha-surface);border: 1px solid var(--ff-border-strong);border-radius: 22px;padding: 40px 32px 32px;box-shadow: var(--ff-shadow-raised, 0 24px 70px #0006);color: var(--ff-ink);}.ha-backdrop > .ha-modal{max-height: 100%;overflow-y: auto;overscroll-behavior: contain;}.ha-modal:focus{outline: none;}.ha-close{position: absolute;top: 14px;right: 14px;display: grid;place-items: center;width: 36px;height: 36px;border: 0;border-radius: 999px;background: transparent;color: var(--ff-ink-2);cursor: pointer;}@media (hover: hover){.ha-close:hover{background: var(--ff-hover);color: var(--ff-ink);}}.ha-modal h2{margin: 0;color: var(--ff-ink);font: 500 28px/1.15 var(--font-display, var(--ff-font));letter-spacing: -.02em;text-wrap: balance;}.ha-modal .ha-sub{margin: 10px 0 0;color: var(--ff-ink-2);font-size: 15.5px;line-height: 1.5;}.ha-sub b{color: var(--ff-ink);font-weight: 600;}.ha-methods{display: flex;flex-direction: column;gap: 12px;margin-top: 24px;}.ha-google{display: inline-flex;align-items: center;justify-content: center;gap: 10px;width: 100%;min-height: 52px;padding: 0 22px;border: 1px solid var(--ff-border-strong);border-radius: 999px;background: transparent;color: var(--ff-ink);font: 600 16px/1 var(--ff-font);cursor: pointer;transition: border-color .15s, background .15s;}@media (hover: hover){.ha-google:hover{border-color: var(--ff-ink);background: var(--ff-hover);}}.ha-gmark{width: 20px;height: 20px;flex: 0 0 auto;}.ha-or{display: flex;align-items: center;gap: 12px;margin: 4px 0;color: var(--ff-ink-4);font-size: 13px;}.ha-or::before, .ha-or::after{content: "";flex: 1;height: 1px;background: var(--ff-border);}.ha-input{display: block;width: 100%;min-width: 0;min-height: 54px;padding: 0 20px;border: 1px solid var(--ff-border-strong);border-radius: 999px;background: var(--ha-surface);color: var(--ff-ink);font: 400 16px/1.5 var(--ff-font);}.ha-input::placeholder{color: var(--ff-ink-4);}.ha-input:focus{outline: none;border-color: var(--ff-blue);box-shadow: 0 0 0 3px var(--ff-blue-tint-border);}.ha-submit{width: 100%;min-height: 50px;margin-top: 10px;border: 0;border-radius: 999px;background: var(--ff-blue);color: #fff;font: 600 16px/1 var(--ff-font);cursor: pointer;transition: background .15s;}html[data-theme="dark"] .ha-submit{color: #0d1424;}@media (hover: hover){.ha-submit:hover{background: var(--ff-blue-dark);}}.ha-modal .ha-fine{margin: 20px 0 0;text-align: center;color: var(--ff-ink-2);font-size: 13.5px;line-height: 1.5;}.ha-fine a{color: inherit;text-decoration: underline;text-underline-offset: 3px;}.ha-code{display: grid;grid-template-columns: repeat(8, minmax(0, 1fr));gap: 8px;width: 100%;margin: 28px auto 0;}.ha-code input{width: 100%;min-width: 0;height: 56px;padding: 0;border: 1px solid var(--ff-border-strong);border-radius: 12px;background: var(--ha-surface);color: var(--ff-ink);text-align: center;font: 500 24px/1 var(--ff-font);font-variant-numeric: tabular-nums;transition: border-color 80ms ease-in-out, box-shadow 80ms ease-in-out;}.ha-code input:focus{outline: none;border-color: var(--ff-blue);box-shadow: 0 0 0 3px var(--ff-blue-tint-border);}.ha-links{display: flex;flex-wrap: wrap;justify-content: center;gap: 12px 18px;margin-top: 24px;font-size: 14px;}.ha-links button{border: 0;background: transparent;padding: 0;color: var(--ff-ink-2);font: inherit;text-decoration: underline;text-underline-offset: 3px;cursor: pointer;}@media (hover: hover){.ha-links button:hover{color: var(--ff-ink);}}.ha-modal .ha-note{margin: 20px 0 0;text-align: center;color: var(--ff-ink-4);font-size: 12.5px;line-height: 1.5;}.ha-modal .ha-notice{margin: 12px 0 0;color: #ffb3bb;font-size: 14px;line-height: 20px;text-align: center;}html[data-theme="light"] .ha-modal .ha-notice{color: #9f1d1d;}.ha-notice a{color: inherit;}.ha-status{display: flex;align-items: center;justify-content: center;gap: 10px;min-height: 220px;color: var(--ff-ink-2);font-size: 15px;text-align: center;}.ha-status{animation: ha-fade-in 160ms ease;}@keyframes ha-fade-in{from{opacity: 0;}to{opacity: 1;}}.ha-spin{width: 16px;height: 16px;flex: 0 0 auto;border: 1.5px solid #ffffff24;border-top-color: var(--ff-ink-2);border-radius: 999px;animation: ha-spin .8s linear infinite;}@keyframes ha-spin{to{transform: rotate(360deg);}}.ha-field{position: relative;min-width: 0;}.ha-field-label{position: absolute;inset: 1px;display: flex;align-items: center;padding: 0 20px;color: var(--ff-ink-4);pointer-events: none;transform: translateY(0);transition: transform 80ms ease-in-out;}.ha-field-label span{max-width: 100%;padding: 1px 6px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;background: var(--ha-surface);font: 400 16px/16px var(--ff-font);transform: translateX(-6px);transition: transform 80ms ease-in-out, color 80ms ease-in-out;}.ha-field .ha-input::placeholder{opacity: 0;}.ha-field:has(.ha-input:focus, .ha-input:not(:placeholder-shown), .ha-input:autofill) .ha-field-label{transform: translateY(-50%);}.ha-field:has(.ha-input:focus, .ha-input:not(:placeholder-shown), .ha-input:autofill) .ha-field-label span{transform: translateX(-12px) scale(.88);}.ha-modal[data-auth-step="code"]{text-align: center;}.ha-modal[data-auth-step="code"] h2{font-size: 28px;line-height: 1.2;}.ha-modal[data-auth-step="code"] .ha-sub{margin-top: 14px;font-size: 15px;line-height: 1.65;overflow-wrap: anywhere;}body[data-design="v5"]:has(.ha-modal){--ha-focus: #a3a3a3;}body[data-design="v5"]:has(.ha-modal) :is(a, button, input, select, textarea, summary, [role="button"], [tabindex]:not([tabindex="-1"])):focus-visible{outline: 2px solid var(--ha-focus);outline-offset: 2px;}body[data-design="v5"]:has(.ha-modal) .ha-modal .ha-input:focus, body[data-design="v5"]:has(.ha-modal) .ha-modal .ha-code input:focus{outline: none;border-color: var(--ha-focus);box-shadow: inset 0 0 0 1px var(--ha-focus);}body[data-design="v5"] .ha-field:focus-within .ha-field-label{color: var(--ha-focus);}@media (max-width: 720px){.ha-backdrop{padding: 16px;}.ha-modal{padding: 38px 24px 28px;}.ha-modal h2, .ha-modal[data-auth-step="code"] h2{font-size: 26px;}.ha-code{gap: 6px;}.ha-code input{height: 50px;}}@media (forced-colors: active){body[data-design="v5"]:has(.ha-modal){--ha-focus: Highlight;}}@media (prefers-reduced-motion: reduce){.ha-spin, .ha-status{animation: none;}.ha-field-label, .ha-field-label span, .ha-code input{transition: none;}}.ha-modal [data-auth-verify]{display: grid;gap: 12px;margin-top: 24px;}.ha-modal [data-auth-verify] > .ha-code:first-child{margin-top: 4px;}.ha-modal [data-auth-verify] > button[type="button"]{min-height: 32px;border: 0;background: transparent;color: var(--ff-ink-2);font: inherit;text-decoration: underline;cursor: pointer;}.ha-modal [data-auth-verify] button:disabled{opacity: .5;cursor: default;}.ha-modal [data-auth-verify] button.si-show{min-height: 0;font: 500 13px/1 var(--ff-font);text-decoration: none;}.ha-modal [data-auth-verify] .ha-links{margin-top: 12px;}.ha-modal [data-auth-verify] .ha-links button[type="button"]{min-height: 0;}.ha-modal [data-auth-verify] .ha-notice.si-notice--ok{color: #b5f0d9;}