#auth-modal{z-index:100;-webkit-backdrop-filter:blur(6px);background:#0d2b3073;justify-content:center;align-items:center;padding:20px;display:none;position:fixed;inset:0}#auth-modal.open{animation:.2s auth-fade;display:flex}@keyframes auth-fade{0%{opacity:0}to{opacity:1}}#auth-modal .auth-card{background:var(--card);border:1px solid var(--line);border-radius:22px;width:100%;max-width:420px;max-height:calc(100dvh - 40px);padding:26px 28px 28px;animation:.32s cubic-bezier(.2,.8,.2,1) auth-rise;position:relative;overflow-y:auto;box-shadow:0 30px 70px -20px #0d2b3073}@keyframes auth-rise{0%{opacity:0;transform:translateY(16px)scale(.97)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){#auth-modal.open,#auth-modal .auth-card{animation:none}}#auth-modal .auth-close{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;font-size:20px;line-height:1;transition:background .15s,color .15s;display:grid;position:absolute;top:14px;right:14px}#auth-modal .auth-close:hover{background:var(--bg);color:var(--ink)}#auth-modal .auth-logo{font-family:"Montserrat",var(--sans);letter-spacing:-.03em;color:#0f1416;text-align:center;font-size:26px;font-weight:700}#auth-modal .auth-logo em{color:#2fc27b;font-style:normal}#auth-modal .auth-sub{text-align:center;color:var(--muted);margin:4px 0 22px;font-size:13px;font-weight:500}#app-boot{z-index:9000;background:#f6fafb;flex-direction:column;justify-content:center;align-items:center;gap:22px;display:none;position:fixed;inset:0;overflow:hidden}html.numi-boot #app-boot{display:flex}.app-boot-logo{font-family:"Montserrat",var(--sans);letter-spacing:-.03em;color:#0f1416;font-size:28px;font-weight:700;line-height:1.2}.app-boot-logo em{color:#2fc27b;font-style:normal}.app-boot-spin{border:3px solid #dfe9ec;border-top-color:#0b8a78;border-radius:50%;width:30px;height:30px;animation:.8s linear infinite app-boot-sp}@keyframes app-boot-sp{to{transform:rotate(360deg)}}.app-boot-bg{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.app-boot-bg i{opacity:.5;will-change:transform;border-radius:50%;display:block;position:absolute}.app-boot-bg .a{background:radial-gradient(circle at 40% 40%,#8fb0ff 0%,#8fb0ffb3 22%,#8fb0ff4d 45%,#8fb0ff00 70%);width:640px;height:640px;animation:26s ease-in-out infinite alternate auth-boot-da;top:-200px;left:-180px}.app-boot-bg .b{background:radial-gradient(circle,#9fe9d6 0%,#9fe9d6b3 22%,#9fe9d64d 45%,#9fe9d600 70%);width:720px;height:720px;animation:32s ease-in-out infinite alternate auth-boot-db;top:120px;right:-240px}.app-boot-bg .c{background:radial-gradient(circle,#b6f3cf 0%,#b6f3cfb3 22%,#b6f3cf4d 45%,#b6f3cf00 70%);width:520px;height:520px;animation:38s ease-in-out infinite alternate auth-boot-dc;top:60vh;left:35%}.app-boot-bg .g{opacity:1;background-image:radial-gradient(#0d2b301a 1px,#0000 1px);background-size:26px 26px;border-radius:0;animation:none;inset:0;-webkit-mask-image:linear-gradient(#000000e6,#0000 70%);mask-image:linear-gradient(#000000e6,#0000 70%)}@keyframes auth-boot-da{0%{transform:translate(0)scale(1)}to{transform:translate(120px,80px)scale(1.15)}}@keyframes auth-boot-db{0%{transform:translate(0)scale(1)}to{transform:translate(-140px,120px)scale(.9)}}@keyframes auth-boot-dc{0%{transform:translate(0)}to{transform:translate(90px,-140px)}}.app-boot-logo,.app-boot-spin,.app-boot-msg{z-index:1;position:relative}.app-boot-msg{color:#5f7a80;text-align:center;max-width:100%;min-height:20px;padding:0 24px;font-size:13px;font-weight:500;line-height:20px;animation:.3s both auth-boot-msg}@keyframes auth-boot-msg{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.app-boot-spin{animation-duration:2.4s!important;animation-iteration-count:infinite!important}.app-boot-bg i,.app-boot-msg{animation:none!important}}#auth-modal .auth-busy{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:18px 0 8px;display:none}#auth-modal.busy .auth-busy{display:flex}#auth-modal.busy .tabs,#auth-modal.busy .tab-pane.active,#auth-modal.busy .auth-close,#auth-modal.busy .pk-welcome{display:none}#auth-modal .auth-spin{border:3px solid var(--line2);border-top-color:var(--teal);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite auth-spin}@keyframes auth-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){#auth-modal .auth-spin{animation-duration:2.4s}}#auth-modal .auth-busy-t{color:var(--ink);font-size:15px;font-weight:700}#auth-modal .auth-busy-s{color:var(--muted);font-size:13px}#auth-modal .tabs{background:var(--bg);border:1px solid var(--line2);border-radius:999px;margin-bottom:22px;padding:3px;display:flex}#auth-modal .tab{text-align:center;color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:999px;flex:1;padding:8px;font-size:13px;font-weight:600;transition:all .15s}#auth-modal .tab.active{color:var(--ink);background:var(--card);box-shadow:0 2px 8px #0d2b301f}#auth-modal .tab-pane{display:none}#auth-modal .tab-pane.active{display:block}#auth-modal .field{margin-bottom:14px}#auth-modal .field label{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:6px;font-size:10px;font-weight:700;display:block}#auth-modal .field input{background:var(--bg);border:1px solid var(--line);width:100%;color:var(--ink);font-family:var(--sans);border-radius:12px;outline:none;padding:11px 14px;font-size:14px;transition:border-color .15s,box-shadow .15s,background .15s}#auth-modal .field input:focus{border-color:var(--teal);background:var(--card);box-shadow:0 0 0 4px #0ea08b26}#auth-modal .field input::placeholder{color:var(--muted2)}#auth-modal .auth-btn{cursor:pointer;width:100%;font-family:var(--sans);background:var(--ink);color:#fff;border:none;border-radius:999px;padding:13px;font-size:14px;font-weight:600;transition:background .18s,transform .18s,box-shadow .18s;box-shadow:0 8px 22px -10px #0d2b3099}#auth-modal .auth-btn:hover{background:var(--teal);transform:translateY(-1px);box-shadow:0 14px 30px -12px #0b8a78b3}#auth-modal .auth-btn:disabled{background:var(--line);color:var(--muted);cursor:not-allowed;box-shadow:none;transform:none}#auth-modal .oauth-divider{color:var(--muted2);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:10px;margin:18px 0 12px;font-size:11px;font-weight:600;display:flex}#auth-modal .oauth-divider:before,#auth-modal .oauth-divider:after{content:"";background:var(--line);flex:1;height:1px}#auth-modal .oauth-row{gap:10px;display:flex}#auth-modal .btn-oauth{border:1px solid var(--line);background:var(--card);color:var(--ink);font-family:var(--sans);cursor:pointer;border-radius:999px;flex:1;justify-content:center;align-items:center;gap:8px;padding:11px;font-size:13px;font-weight:600;transition:border-color .15s,transform .15s;display:flex}#auth-modal .btn-oauth svg{flex:none;width:18px;height:18px}#auth-modal .btn-oauth:hover{border-color:var(--ink);transform:translateY(-1px)}#auth-modal .btn-oauth:disabled{opacity:.5;cursor:not-allowed;transform:none}#auth-modal .gsi-slot{flex:1;justify-content:center;align-items:center;min-height:44px;display:flex}#auth-modal .gsi-slot[hidden],#auth-modal .btn-oauth[hidden]{display:none}#auth-modal .pk-row{margin-top:10px}#auth-modal .oauth-row[hidden]{display:none}#auth-modal .consent{cursor:pointer;color:var(--ink2);align-items:flex-start;gap:10px;margin-top:16px;font-size:12px;line-height:1.5;display:flex}#auth-modal .consent input{width:16px;height:16px;accent-color:var(--teal);cursor:pointer;flex-shrink:0;margin:1px 0 0}#auth-modal .consent a{color:var(--teal);border-bottom:1px solid color-mix(in srgb,var(--teal) 35%,transparent);font-weight:600;text-decoration:none}#auth-modal .consent a:hover{border-bottom-color:var(--teal)}#auth-modal .consent.missing{color:#a32e28}#auth-modal .consent.missing input{outline-offset:2px;border-radius:4px;outline:2px solid #e0685f}#auth-modal .err{color:#a32e28;background:#fdecea;border:1px solid #f5c2bd;border-radius:12px;margin-top:14px;padding:10px 14px;font-size:12px;display:none}#auth-modal .err.show{display:block}#auth-modal .ok-msg{background:var(--mint);color:#086b5d;border:1px solid #b9e8da;border-radius:12px;margin-top:14px;padding:10px 14px;font-size:12px;display:none}#auth-modal .ok-msg.show{display:block}#auth-modal .auth-actions{justify-content:flex-end;margin-top:8px;display:flex}#auth-modal .auth-actions.center{justify-content:center;margin-top:16px}#auth-modal .auth-link{font-family:var(--sans);color:var(--teal);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-size:12px;font-weight:600;text-decoration:underline}#auth-modal .auth-link:hover{color:var(--ink)}#auth-modal .err .auth-link,#auth-modal .ok-msg .auth-link{color:inherit}#auth-modal .invite-note{margin:0 0 16px}#auth-modal .auth-pane-title{color:var(--ink);margin-bottom:6px;font-size:16px;font-weight:700}#auth-modal .auth-pane-desc{color:var(--muted);margin-bottom:16px;font-size:13px;line-height:1.5}#auth-modal .spin{vertical-align:middle;border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:14px;height:14px;margin-right:6px;animation:.6s linear infinite auth-sp;display:inline-block}@keyframes auth-sp{to{transform:rotate(360deg)}}html.numi-app body>:not(#auth-modal):not(#app-boot):not(.bg){visibility:hidden}html.numi-app #auth-modal{-webkit-backdrop-filter:none;background:0 0;animation:none}html.numi-app #auth-modal .auth-close{display:none}html.numi-app #auth-modal .auth-card{background:#ffffffe6;animation:none}#auth-modal .pk-welcome{text-align:center;flex-direction:column;align-items:center;padding:6px 0 4px;display:flex}#auth-modal .pk-welcome[hidden],#auth-modal.pk-welcome-on .tabs,#auth-modal.pk-welcome-on .tab-pane{display:none}#auth-modal .pk-ava{color:#fff;width:72px;height:72px;font-family:"Montserrat",var(--sans);background:linear-gradient(135deg,#0ea08b,#2fc27b);border-radius:50%;place-items:center;margin:4px 0 14px;font-size:32px;font-weight:800;display:grid}#auth-modal .pk-hello{color:var(--ink);letter-spacing:-.01em;font-size:19px;font-weight:700}#auth-modal .pk-email{color:var(--muted);word-break:break-all;margin:4px 0 22px;font-size:13px}#auth-modal .pk-go{justify-content:center;align-items:center;gap:10px;display:flex}#auth-modal .pk-go svg{flex:none;width:20px;height:20px}#auth-modal .pk-welcome .err,#auth-modal .pk-welcome .ok-msg{text-align:left;width:100%;margin-top:12px}#auth-modal .pk-other{margin-top:18px}@media (width<=480px){html.numi-app #auth-modal{align-items:center;padding:16px}html.numi-app #auth-modal .auth-card{border-radius:22px;max-height:calc(100dvh - 32px);padding:24px 20px}#auth-modal{align-items:flex-end;padding:0}#auth-modal .auth-card{max-width:none;max-height:94dvh;padding:24px 20px calc(24px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0}@keyframes auth-rise{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}}#auth-modal.i18n-wait [data-i18n],#auth-modal.i18n-wait [data-i18n-html],#auth-modal.i18n-wait [data-i18n-ph]{visibility:hidden}
