#nexdirectory-global-auth-modal[hidden] { display: none !important; }
            #nexdirectory-global-auth-modal {
                position: fixed;
                inset: 0;
                z-index: 1500;
                display: flex;
                align-items: center;
                justify-content: center;
                padding: 1rem;
                background: rgba(15, 23, 42, 0.48);
                backdrop-filter: blur(4px);
                -webkit-backdrop-filter: blur(4px);
                opacity: 0;
                pointer-events: none;
                transition: opacity .24s ease;
            }
            #nexdirectory-global-auth-modal.is-open {
                opacity: 1;
                pointer-events: auto;
            }
            .nexdirectory-auth-modal-open {
                overflow: hidden !important;
            }
            #nexdirectory-global-auth-modal .nexdirectory-global-auth-modal__dialog {
                width: min(560px, 96vw);
                max-height: calc(100dvh - 2rem);
                overflow: auto;
                background: #fff;
                border: 1px solid #e5e7eb;
                border-radius: 1.25rem;
                box-shadow: 0 28px 84px rgba(2, 6, 23, .42);
                transform: translateY(16px) scale(.98);
                transition: transform .26s cubic-bezier(.22,1,.36,1);
            }
            #nexdirectory-global-auth-modal.is-open .nexdirectory-global-auth-modal__dialog {
                transform: translateY(0) scale(1);
            }
            .nexdirectory-global-auth-modal__head {
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: .75rem;
                padding: 1rem 1.1rem .8rem;
                border-bottom: 1px solid #f3f4f6;
                position: sticky;
                top: 0;
                background: #fff;
                z-index: 2;
            }
            .nexdirectory-global-auth-modal__title {
                margin: 0;
                font-size: 1.05rem;
                font-weight: 800;
                color: #111827;
            }
            .nexdirectory-global-auth-modal__close {
                border: 1px solid #e5e7eb;
                background: #f8fafc;
                color: #374151;
                width: 2.1rem;
                height: 2.1rem;
                border-radius: 999px;
                cursor: pointer;
                font-size: 1.2rem;
                line-height: 1;
            }
            .nexdirectory-global-auth-modal__body {
                padding: 1rem 1.1rem 1.2rem;
            }
            .nexdirectory-global-auth-tabs {
                display: grid;
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: .4rem;
                padding: .25rem;
                border-radius: .85rem;
                background: #f3f4f6;
                margin-bottom: .9rem;
            }
            .nexdirectory-global-auth-tab {
                border: 0;
                border-radius: .65rem;
                background: transparent;
                color: #6b7280;
                font-size: .86rem;
                font-weight: 700;
                padding: .55rem .65rem;
                cursor: pointer;
            }
            .nexdirectory-global-auth-tab.is-active {
                background: #fff;
                color: #111827;
                box-shadow: 0 1px 3px rgba(0, 0, 0, .08);
            }
            .nexdirectory-global-auth-panel[hidden] { display: none !important; }
            .nexdirectory-global-auth-form { display: grid; gap: .72rem; }
            .nexdirectory-global-auth-form label {
                font-size: .72rem;
                font-weight: 800;
                text-transform: uppercase;
                letter-spacing: .05em;
                color: #6b7280;
                display: block;
            }
            .nexdirectory-global-auth-form input[type="text"],
            .nexdirectory-global-auth-form input[type="email"],
            .nexdirectory-global-auth-form input[type="password"] {
                width: 100%;
                border: 1px solid #d1d5db;
                background: #f9fafb;
                color: #111827;
                border-radius: .75rem;
                min-height: 2.75rem;
                padding: .65rem .85rem;
                font-size: .95rem;
                outline: none;
            }
            .nexdirectory-global-auth-form input:focus {
                border-color: var(--nexdirectory-primary, #ff5e14);
                box-shadow: 0 0 0 3px rgba(var(--nexdirectory-primary-rgb,255,94,20), .14);
                background: #fff;
            }
            .nexdirectory-global-auth-submit {
                border: 0;
                border-radius: .75rem;
                min-height: 2.75rem;
                padding: .65rem .85rem;
                background: var(--nexdirectory-primary, #ff5e14);
                color: #fff !important;
                -webkit-text-fill-color: #fff !important;
                font-size: .95rem;
                font-weight: 800;
                cursor: pointer;
            }
            .nexdirectory-global-auth-submit:hover {
                background: var(--nexdirectory-primary-hover, #ea580c);
            }
            .nexdirectory-global-auth-minor {
                border: 0;
                background: transparent;
                color: #4b5563;
                font-size: .85rem;
                font-weight: 600;
                padding: .2rem;
                text-decoration: underline;
                cursor: pointer;
                justify-self: start;
            }
            .nexdirectory-global-auth-check {
                display: flex;
                align-items: flex-start;
                gap: .5rem;
                font-size: .79rem;
                color: #4b5563;
                line-height: 1.35;
            }
            .nexdirectory-global-auth-check input {
                margin-top: .08rem;
                accent-color: var(--nexdirectory-primary, #ff5e14);
            }
