PageSourceSearch

https://toptierclosers.softr.app/login

html toptierclosers.softr.app collected 2026-10-03 14:55:19 UTC 51,887 bytes, 769 lines download raw bytes

1<!DOCTYPE html>
2
3<!-- Last Published: Tue, September 29 2026 17:24:26 -->
4<html lang="en-US" dir="ltr">
5<head>
6
7    <meta charset="utf-8">
8    <meta http-equiv="X-UA-Compatible" content="IE=edge">
9    <meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
10    <link rel="preconnect" href="https://assets.softr-files.com">
11    <link rel="stylesheet"
12      href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css"
13      integrity="sha384-xOolHFLEh07PJGoPkLv1IbcEPTNtaed2xpHsD9ESMhqIYd0nLMwNLD69Npy4HI+N"
14      crossorigin="anonymous">
15    
15<script>
16        const reactDefaultThemes = {defaultBaseTextSize: '16px',defaultBodyFont: 'Plus Jakarta Sans',defaultBodyFontWeight: '500',defaultBodyTextColor: '#152237',defaultButtonBackgroundColor: '#0035d0',defaultButtonRoundness: '.25rem',defaultRoundButtonsAndInputs: false,defaultButtonTextColor: '#ffffff',defaultContainerStyle: 'container-fluid',defaultTitleFont: 'Plus Jakarta Sans',defaultTitleFontWeight: '600',defaultTitleTextColor: '#080a19',defaultSize: 'S',defaultSizeDesktop: 'S',defaultSizeMobile: 'M',defaultDensityLayout: 'COMPACT',defaultDensitySection: 'COMPACT',defaultBackgroundColor: '#ffffff',defaultShadow: false,defaultBackgroundStyle: 'HIGHLIGHTED',defaultSurfaceColor: '#faf9f7',defaultSuccessColor: '#0c9b10',defaultWarningColor: '#f5c630',defaultDangerColor: '#e7000b',defaultNavigationDesktopTop: 'regular',defaultNavigationDesktopSide: 'regular',defaultNavigationMobileTop: 'regular',defaultNavigationMobileSide: 'surface',defaultNavigationMobileBottom: 'surface',defaultBorderVariant: 'off'};
17    </script>
17
18        
18<script>window.isNavigationTransitionsEnabled = true; window.isViteBuildEnabled = true; </script>
18
19        
19<script src="https://assets.softr-files.com/softr-blocks/prod/libs/softr-page-renderer/softr-page-renderer.js?t=1779882547065"></script>
19
20
21<meta name="twitter:title" content="Log in">
22<meta property="twitter:title" content="Log in">
23<meta property="og:title" content="Log in">
24<meta name="twitter:description" content="Made with Softr, the easiest way to turn your data into internal tools and client portals. No coding required.">
25<meta property="twitter:description" content="Made with Softr, the easiest way to turn your data into internal tools and client portals. No coding required.">
26<meta property="og:description" content="Made with Softr, the easiest way to turn your data into internal tools and client portals. No coding required.">
27<meta property="og:image" content="https://assets.softr-files.com/applications/333a21e4-e9da-4e79-9250-e3d3dd6f2414/assets/e4945c67-5a04-44cd-87fa-ab9af9cdb1d4.png">
28<meta name="twitter:image" content="https://assets.softr-files.com/applications/333a21e4-e9da-4e79-9250-e3d3dd6f2414/assets/e4945c67-5a04-44cd-87fa-ab9af9cdb1d4.png">
29<meta name="twitter:card" content="summary_large_image">
30<meta property="og:url" content="https://toptierclosers.softr.app/login">
31<meta property="twitter:url" content="https://toptierclosers.softr.app/login">
32<meta property="og:type" content="website">
33<meta property="og:site_name" content="Top Tier Closers">
34
35<title>Log in</title>
36<meta name="description" content="Made with Softr, the easiest way to turn your data into internal tools and client portals. No coding required.">
37
38
39<link rel="icon" type="image/x-icon" href="https://assets.softr-files.com/applications/333a21e4-e9da-4e79-9250-e3d3dd6f2414/assets/a1383469-8f07-4611-ae5d-afd17a6c8e5e.png?rnd=1784552303513"/>
40
41
42<link rel="canonical" href="https://toptierclosers.softr.app/login" />
43<link href="https://fonts.softr-files.com/google/api/css?family=Plus+Jakarta+Sans:200,300,400,500,600,700,800,200i,300i,400i,500i,600i,700i,800i&display=block" rel="stylesheet">
44
45<link href="https://assets.softr-files.com/libs/font-awesome/6.5.0/css/all.min.css" rel="stylesheet">
46
47
48<style type="text/css">
49
50    html {
51        scroll-behavior: smooth;
52        font-size: 16px;
53        overflow-x: hidden;
54        background-color: #ffffff;
55    }
56
57    body {
58        /* fallback for devices that do not support dvh units */
59        min-height: 100vh;
60        min-height: 100dvh;
61        /* reboot.css sets its own background, but we want it to match our theme */
62        background-color: inherit;
63    }
64
65    .container {
66        max-width: 100%;
67    }
68
69    @media (min-width: 576px) {
70        .container {
71            max-width: 100%;
72        }
73    }
74
75    @media (max-width: 576px) {
76        .navbar-brand img {
77            max-width: 15rem !important;
78        }
79    }
80
81    @media (min-width: 768px) {
82        .container {
83            max-width: 100%;
84        }
85    }
86
87    @media (min-width: 992px) {
88        .container {
89            max-width: 100%;
90        }
91    }
92
93    @media (min-width: 1200px) {
94        .container {
95            max-width: 100%;
96        }
97    }
98
99    p, h1, h2, h3, h4, h5, small {
100        white-space: pre-line;
101    }
102
103    @media screen and (max-width: 768px) {
104        input, select, textarea {
105            font-size: 16px !important;
106        }
107    }
108
109    h1.sw-font-family-default,
110    h2.sw-font-family-default,
111    h3.sw-font-family-default {
112        font-family: "Plus Jakarta Sans";
113    }
114
115    h1.sw-font-weight-default,
116    h2.sw-font-weight-default,
117    h3.sw-font-family-default {
118        font-weight: 600;
119    }
120
121    h1.sw-text-color-default,
122    h2.sw-text-color-default,
123    h3.sw-font-family-default {
124        color: #080a19;
125    }
126
127    section.sw-font-family-default,
128    header.sw-font-family-default,
129    nav.sw-font-family-default,
130    footer.sw-font-family-default,
131    div.sw-font-family-default,
132    span.sw-font-family-default,
133    small.sw-font-family-default,
134    pre.sw-font-family-default,
135    p.sw-font-family-default,
136    b.sw-font-family-default,
137    li.sw-font-family-default,
138    ul.sw-font-family-default,
139    a.sw-font-family-default,
140    h4.sw-font-family-default,
141    h5.sw-font-family-default,
142    h6.sw-font-family-default {
143        font-family: "Plus Jakarta Sans";
144    }
145
146    span.sw-font-weight-default,
147    li.sw-font-weight-default span,
148    small.sw-font-weight-default,
149    li.sw-font-weight-default small,
150    pre.sw-font-weight-default,
151    p.sw-font-weight-default,
152    h4.sw-font-weight-default,
153    h5.sw-font-weight-default,
154    h6.sw-font-weight-default {
155        font-weight: 500;
156    }
157
158    span.sw-text-color-default,
159    li.sw-text-color-default span,
160    small.sw-text-color-default,
161    li.sw-text-color-default small,
162    pre.sw-text-color-default,
163    p.sw-text-color-default,
164    div.sw-text-color-default,
165    h4.sw-text-color-default,
166    h5.sw-text-color-default,
167    h6.sw-text-color-default {
168        color: #152237;
169    }
170
171    input.sw-font-family-default,
172    textarea.sw-font-family-default {
173        font-family: "Plus Jakarta Sans";
174    }
175
176    input.sw-font-weight-default,
177    textarea.sw-font-weight-default {
178        font-weight: 500;
179    }
180
181    .sw-font-family-default::-webkit-input-placeholder,
182    .sw-font-family-default::-moz-placeholder,
183    .sw-font-family-default:-ms-input-placeholder,
184    .sw-font-family-default:-moz-placeholder {
185        font-family: "Plus Jakarta Sans";
186    }
187
188    .sw-font-family-default::-webkit-input-placeholder,
189    .sw-font-family-default::-moz-placeholder,
190    .sw-font-family-default:-ms-input-placeholder,
191    .sw-font-family-default:-moz-placeholder {
192        font-weight: 500;
193    }
194
195    .sw-text-color-default[data-element='button'] {
196        color: #ffffff;
197    }
198
199    .sw-background-color-default[data-element='button'] {
200        background-color: #0035d0;
201    }
202
203    .sw-border-radius-default[data-element='button'] {
204        border-radius: .25rem;
205    }
206
207    /* Micromodal styles */
208    .sw-modal {
209        display: none;
210    }
211
212    .sw-modal.is-open {
213        display: block;
214    }
215
216    .sw-modal .sw-modal-overlay {
217        position: fixed;
218        top: 0;
219        left: 0;
220        right: 0;
221        bottom: 0;
222        background: rgba(0, 0, 0, 0.6);
223        display: flex;
224        justify-content: center;
225        align-items: center;
226        z-index: 9999;
227    }
228
229    .sw-modal .sw-modal-container {
230        background-color: #FFFFFF;
231        padding: 40px 10px 10px 10px;
232        overflow-y: auto;
233        box-sizing: border-box;
234        position: relative;
235        margin: auto;
236        border-radius: 16px;
237    }
238
239    .sw-modal #sw-modal-content {
240        display: flex;
241        align-items: center;
242        justify-content: center;
243    }
244
245    .sw-modal .sw-modal-close {
246        background: transparent;
247        border: 0;
248        position: absolute;
249        right: 10px;
250        top: 10px;
251    }
252
253    .sw-modal-close:focus {
254        outline: none;
255    }
256
257    .sw-modal .sw-modal-iframe {
258        border: none;
259    }
260
261    .sw-modal-size-sm {
262        width: 464px;
263        height: 350px;
264        max-width: 95vw;
265        max-height: 95vh;
266    }
267
268
269    .sw-modal-size-md {
270        width: 755px;
271        height: 600px;
272        max-width: 95vw;
273        max-height: 95vh;
274    }
275
276    .sw-modal-size-lg {
277        width: 1196px;
278        height: 780px;
279        max-width: 95vw;
280        max-height: 95vh;
281    }
282
283    .sw-modal-size-xl {
284        width: 95vw;
285        height: 95vh;
286    }
287
288    .sw-modal-container > div, #sw-modal-content, #sw-modal-content iframe {
289        width: 100%;
290        height: 100%;
291    }
292
293    .sw-modal-close:before {
294        content: "\2715";
295    }
296
297    @keyframes rotation {
298        from {
299            transform: rotate(0deg);
300        }
301        to {
302            transform: rotate(359deg);
303        }
304    }
305
306
307</style>
308
309<style>
310    .sw-font-size-3xl {
311        font-size: 2rem;
312    }
313    .sw-font-size-4xl {
314        font-size: 2.25rem;
315    }
316    .sw-font-size-5xl {
317        font-size: 3rem;
318    }
319
320</style>
321
322<!-- App Integrations -->
323
324<!-- End Integrations -->
325
326
327
328<script>window['application_context'] = {}; window['application_context']['policies'] ={"numberOfSupportedDomains":1,"canDisableSoftrBranding":true,"hasSoftrBrandingFooterBoundSupport":true,"numberOfDatasourceRecordsPerTable":null,"numberOfInternalUsers":null,"numberOfExternalUsers":null,"supportedNumberOfMembershipUsers":null,"hasGoogleAuthenticationSupport":true,"hasSamlAuthenticationSupport":false,"hasOpenIdAuthenticationSupport":false,"hasUserLastSeenSupport":true,"hasUserAuthOneTimeCodeSupport":true,"has2faSupport":false,"hasAdvancedSecuritySupport":false,"hasScimSupport":false,"numberOfDaysApplicationHistory":90,"hasCustomCodeSupport":true,"hasEmbedBlockSupport":true,"hasTransferApplicationsAcrossWorkspace":true,"hasPwaSupport":true,"hasPushNotificationsSupport":true,"hasInAppNotificationsSupport":true,"hasDynamicAppLogoSupport":false,"hasSignatureFieldSupport":true,"hasFormConditionsSupport":true,"numberOfFormStepConditions":null,"numberOfFormSectionConditions":null,"numberOfFormEndings":null,"hasTransferOwnershipSupport":null,"hasActionButtonRecordLevelVisibilitySupport":true,"hasActionButtonCustomUserGroupVisibilitySupport":true,"numberOfUsersInWorkspace":100,"numberOfCustomUserGroups":3,"numberOfBuilders":null,"hasBuilderAddOnSupport":false,"numberOfTeamUsers":null,"maxTeamUsers":null,"numberOfClientUsers":null,"maxClientUsers":null,"restrictedDataSources":["HUBSPOT","GOOGLE_BIGQUERY","MYSQL","POSTGRESQL","SQL_SERVER","MARIADB","SNOWFLAKE","SALESFORCE","MICROSOFT_EXCEL"],"restrictedBlocks":[],"hasInlineEditingSupport":true,"hasFilteredUserSyncSupport":true,"restrictedActions":[],"hasEditAddFormOptionFilterSupport":null,"hasCustomEmailSenderSupport":true,"hasSoftrApiSupport":true,"hasDomainRestrictedSignUpSupport":false,"supportedDataRestrictionOperations":["VIEW"],"hasHideBlockOnDetailsPageSupport":true,"hasOptionFilterSupport":true,"restrictedFiledOptions":["EMAIL_DOMAIN_RESTRICTIONS","EMAIL_CHECK_IF_EMAIL_EXISTS","EMAIL_DISALLOW_FREE_DOMAINS"],"hasAdvancedEmailValidation":false,"hasCustomDomainAddOnSupport":true,"hasUserAddOnSupport":true,"numberOfAiCredits":5000,"hasAgentsByokSupport":false,"workflowsMaxExecutionTimeSeconds":null,"workflowsMinimumPollingIntervalSeconds":60,"numberOfWorkflowActionExecutionsPerMonth":10000,"restrictedWorkflowActions":["OPEN_AI_SEND_PROMPT","OPEN_AI_WRITE_TEXT","OPEN_AI_SUMMARIZE_TEXT","OPEN_AI_CATEGORISE_TEXT","ANTHROPIC_AI_SEND_PROMPT","ANTHROPIC_AI_WRITE_TEXT","ANTHROPIC_AI_SUMMARIZE_TEXT","ANTHROPIC_AI_CATEGORISE_TEXT","GEMINI_AI_CATEGORISE_TEXT","GEMINI_AI_SEND_PROMPT","GEMINI_AI_SUMMARIZE_TEXT","GEMINI_AI_WRITE_TEXT","MISTRAL_AI_CATEGORISE_TEXT","MISTRAL_AI_SEND_PROMPT","MISTRAL_AI_SUMMARIZE_TEXT","MISTRAL_AI_WRITE_TEXT"],"restrictedWorkflowTriggers":[],"workflowsExecutionLogsRetentionTimeDays":60,"hasApplicationLevelCommentsSupport":true,"numberOfSupportedSoftrDatabaseRecordsPerWorkspace":500000,"numberOfSupportedSoftrDatabaseRecordsPerDatabase":50000,"supportedSoftrDatabaseStorageSizePerWorkspace":50000000000,"hasSoftrDatabaseApiSupport":true,"numberOfSoftrDatabaseSnapshotHistoryDays":14,"numberOfSoftrDatabaseSnapshotFrequencyDays":1,"numberOfSoftrDatabaseManualSnapshots":10,"numberOfSoftrDatabaseRecordHistoryDays":30,"canDisableSoftrBrandingForStandaloneForm":true,"canChangeSocialSettingsForStandaloneForm":true,"hasDomainRestrictedStandaloneForm":true,"hasAuditLogSupport":false,"hasOnboardingFlowsSupport":true,"hasGlobalSearchSupport":false,"hasRegexValidationSupport":true,"hasLiveChatSupport":true,"hasApplicationMcpSupport":false}; window['application_context']['date_and_time_settings'] = {"formatSettings":{"type":"LOCAL","localSettings":{"localizeDayAndMonth":true},"fixedSettings":null},"timezoneSettings":{"type":"LOCAL","fixedTimezone":null}}; window['application_context']['number_formatting_settings'] = {"type":"LOCAL","fixedLocale":"en-US"}; window['application_context']['global_search_settings'] = {"enabled":false,"searchPlaceholder":"Search","initialStateMessage":"Type something to start searching","initialStateImage":null,"noResultsMessage":"No results found","noResultsImage":null,"backdrop":null}; window['application_context']['user_settings'] = {"authSettings":{"loginEnabled":true,"authenticationMethods":["EMAIL"],"signUpSettings":{"policy":"DISABLED","allowedDomains":[]},"userSessionExpiration":"90_DAYS","userInactivityTimeout":"NEVER","emailAuthSettings":{"loginMethods":["PASSWORD","EMAIL_CODE"],"passwordSettings":{"inputLabel":"Password","inputPlaceholder":"Enter your password","forgotPasswordText":"Forgot password","incorrectPasswordText":"Incorrect password.","newPasswordLabel":"New password","newPasswordPlaceholder":"Set a secure password","strongPasswords":true,"minimumCharactersText":"At least 12 characters","upperAndLowerCaseText":"1 uppercase & 1 lowercase","numberText":"1 number (0-9)","symbolText":"1 symbol (!@#$%^&*)","repeatPasswordLabel":"Repeat password","repeatPasswordPlaceholder":"Repeat your password","passwordsDontMatchText":"Passwords don't match."},"emailOneTimeCodeSettings":{"expiration":"5_MINUTES","inputLabel":"Verification code","inputPlaceholder":"Enter verification code","resendText":"Resend","invali
328dCodeText":"Invalid code."},"secondaryLoginMethods":[],"smsOneTimeCodeSettings":null,"authenticatorSettings":null,"inputLabel":"Email","inputPlaceholder":"Enter your email"},"googleSettings":{"clientId":null,"clientSecret":null,"userType":"INTERNAL","emailDomains":[]},"ssoSettings":{"type":"SAML","emailDomains":[],"saml":{"acsUrl":null,"audienceUrl":null,"metadataXml":null,"emailKey":null,"firstNameKey":null,"lastNameKey":null},"openId":{"callbackUrl":null,"providerUrl":null,"tokenServiceUrl":null,"clientId":null,"clientSecret":null}},"authenticatorAppSettings":{"enabled":false,"generalSettings":{"emailPairing":"OPTIONAL","googlePairing":"OPTIONAL","ssoPairing":"OPTIONAL"},"setupSettings":{"setupPrompt":{"title":"Secure your account with 2FA","subtitle":"Set up an authenticator app to make your account more secure","skipButton":"Not now","setupButton":"Set up"},"setupInstruction":{"title":"Set up authenticator app","qrDesktop":"Scan the QR code below with an authenticator app","mobileText":"Click the button below to set up an authenticator app","mobileButton":"Open authenticator","manualCode":"Or enter the setup code manually","verifyPlaceholder":"Enter the 6-digit code from your authenticator app","incorrectError":"Incorrect code. Please try again"},"backupCodes":{"title":"Save your backup codes","description":"Use these codes if you lose access to your authenticator app. Each code will only work once.\n\nThis is your only chance to copy them. Please save them somewhere safe.","downloadButton":"Download","copyButton":"Copy","printButton":"Print","hideDoneUntilAction":true,"doneButton":"Done"}},"loginSettings":{"codeInput":{"label":"Enter the 6-digit code from your authenticator app","useBackupCodeLink":"Use backup code instead","incorrectError":"Incorrect code. Please try again"},"backupCode":{"backButton":"Back","inputLabel":"Enter one of your backup codes","invalidCodeError":"This code is either invalid or has been used","additionalRecoveryInstruction":"If you have trouble finding your backup codes, please contact your application's admin for assistance.","continueButton":"Continue","resetAuthenticatorToast":"Reset your authenticator to avoid getting locked out","resetButton":"Reset"}},"accountSettings":{"authenticatorField":{"label":"Authenticator","enabledStatus":"Enabled","setupButton":"Set up","resetButton":"Reset","removeButton":"Remove"},"resetOrRemoveFlow":{"title":"Let's verify it's you","subtitle":"Please enter the verification code we just sent to your email","continueButton":"Continue","resetSuccessMessage":"Your authenticator app has changed. Please make sure to log in with the new authenticator next time.","removeSuccessMessage":"Your authenticator app has been removed."}}}},"autoInvite":true}; window['application_context']['application_logo'] = {"type":"IMAGE","icon":{"logo":"","text":""},"image":{"horizontal":"https://assets.softr-files.com/applications/333a21e4-e9da-4e79-9250-e3d3dd6f2414/assets/bf9c3510-0b10-4a0a-bab1-db127e73bce7.png","square":"https://assets.softr-files.com/applications/333a21e4-e9da-4e79-9250-e3d3dd6f2414/assets/3807dfb2-bdfc-4ba1-af84-db3618ab3ca7.png"}}; window['application_context']['user_connection'] = {}; window['application_context']['user_connection']['datasource'] = {}; window['application_context']['user_connection']['datasource']['id'] = '9821c768-6232-42af-8b8c-5cca0a196e10'; window['application_context']['user_connection']['datasource']['datasource_integration_type'] = 'SOFTR_TABLES'; window['application_context']['user_connection']['attributes'] = {"nameFieldName":"DmhDn","emailFieldName":"lco6l","profilePictureFieldName":"qBRwS"}; </script>
328
329
330<style>
331 .sw-font-size-5xl {
332    font-size: 3rem;
333  }
334  .sw-font-size-4xl {
335    font-size: 2.25rem;
336  }
337</style>
338<script>
339  document.addEventListener("DOMContentLoaded", () => {
340    if($(window).width() < 768) {
341       $('h1.sw-font-size-10xl').removeClass('sw-font-size-10xl').addClass('sw-font-size-5xl');
342       $('h1.sw-font-size-9xl').removeClass('sw-font-size-9xl').addClass('sw-font-size-5xl');
343       $('h1.sw-font-size-8xl').removeClass('sw-font-size-8xl').addClass('sw-font-size-5xl');
344       $('h1.sw-font-size-7xl').removeClass('sw-font-size-7xl').addClass('sw-font-size-5xl');
345       $('h1.sw-font-size-6xl').removeClass('sw-font-size-6xl').addClass('sw-font-size-4xl');
346       $('h2.sw-font-size-10xl').removeClass('sw-font-size-10xl').addClass('sw-font-size-5xl');
347       $('h2.sw-font-size-9xl').removeClass('sw-font-size-9xl').addClass('sw-font-size-5xl');
348       $('h2.sw-font-size-8xl').removeClass('sw-font-size-8xl').addClass('sw-font-size-5xl');
349       $('h2.sw-font-size-7xl').removeClass('sw-font-size-7xl').addClass('sw-font-size-5xl');
350       $('h2.sw-font-size-6xl').removeClass('sw-font-size-6xl').addClass('sw-font-size-4xl');
351       $('div.sw-font-size-10xl').removeClass('sw-font-size-10xl').addClass('sw-font-size-5xl');
352       $('div.sw-font-size-9xl').removeClass('sw-font-size-9xl').addClass('sw-font-size-5xl');
353       $('div.sw-font-size-8xl').removeClass('sw-font-size-8xl').addClass('sw-font-size-5xl');
354       $('div.sw-font-size-7xl').removeClass('sw-font-size-7xl').addClass('sw-font-size-5xl');
355       $('div.sw-font-size-6xl').removeClass('sw-font-size-6xl').addClass('sw-font-size-4xl');
356       $('p.sw-font-size-10xl').removeClass('sw-font-size-10xl').addClass('sw-font-size-5xl');
357       $('p.sw-font-size-9xl').removeClass('sw-font-size-9xl').addClass('sw-font-size-5xl');
358       $('p.sw-font-size-8xl').removeClass('sw-font-size-8xl').addClass('sw-font-size-5xl');
359       $('p.sw-font-size-7xl').removeClass('sw-font-size-7xl').addClass('sw-font-size-5xl');
360       $('p.sw-font-size-6xl').removeClass('sw-font-size-6xl').addClass('sw-font-size-4xl');
361       $('span.sw-font-size-10xl').removeClass('sw-font-size-10xl').addClass('sw-font-size-5xl');
362       $('span.sw-font-size-9xl').removeClass('sw-font-size-9xl').addClass('sw-font-size-5xl');
363       $('span.sw-font-size-8xl').removeClass('sw-font-size-8xl').addClass('sw-font-size-5xl');
364       $('span.sw-font-size-7xl').removeClass('sw-font-size-7xl').addClass('sw-font-size-5xl');
365       $('span.sw-font-size-6xl').removeClass('sw-font-size-6xl').addClass('sw-font-size-4xl');
366    }
367  });
368</script>
368
369
370
371
372
373<script>window['is401Page'] = false; </script>
373
374
375
376<script>
377    const BlocksRenderedEventName = "@softr/page-content-loaded";
378</script>
378
379
380<script>
381    function applyMobileTextSizesForV4Blocks() {
382        const width = window.innerWidth;
383
384        const largeElements = [
385            'h1.sw-font-size-10xl', 'h1.sw-font-size-9xl', 'h1.sw-font-size-8xl', 'h1.sw-font-size-7xl',
386            'h2.sw-font-size-10xl', 'h2.sw-font-size-9xl', 'h2.sw-font-size-8xl', 'h2.sw-font-size-7xl',
387            'h3.sw-font-size-10xl', 'h3.sw-font-size-9xl', 'h3.sw-font-size-8xl', 'h3.sw-font-size-7xl',
388            'div.sw-font-size-10xl', 'div.sw-font-size-9xl', 'div.sw-font-size-8xl', 'div.sw-font-size-7xl',
389            'p.sw-font-size-10xl', 'p.sw-font-size-9xl', 'p.sw-font-size-8xl', 'p.sw-font-size-7xl',
390            'span.sw-font-size-10xl', 'span.sw-font-size-9xl', 'span.sw-font-size-8xl', 'span.sw-font-size-7xl',
391        ];
392
393        const smallElements = [
394            'h1.sw-font-size-6xl', 'h2.sw-font-size-6xl', 'h3.sw-font-size-6xl', 'div.sw-font-size-6xl', 'p.sw-font-size-6xl', 'span.sw-font-size-6xl',
395        ];
396
397        if (width < 576) {
398            largeElements.forEach(selector => {
399                document.querySelectorAll(selector).forEach(el => {
400                    el.classList.remove(selector.split('.').slice(1).join(' '));
401                    el.classList.add('sw-font-size-4xl');
402                });
403            });
404
405            smallElements.forEach(selector => {
406                document.querySelectorAll(selector).forEach(el => {
407                    el.classList.remove(selector.split('.').slice(1).join(' '));
408                    el.classList.add('sw-font-size-3xl');
409                });
410            });
411        } else if (width < 768) {
412            largeElements.forEach(selector => {
413                document.querySelectorAll(selector).forEach(el => {
414                    el.classList.remove(selector.split('.').slice(1).join(' '));
415                    el.classList.add('sw-font-size-5xl');
416                });
417            });
418
419            smallElements.forEach(selector => {
420                document.querySelectorAll(selector).forEach(el => {
421                    el.classList.remove(selector.split('.').slice(1).join(' '));
422                    el.classList.add('sw-font-size-4xl');
423                });
424            });
425        }
426    }
427</script>
427
428
429<!-- This script synchronizes the query parameters and path of the top window with those of the iframe.
430     It updates the top window's URL, and include any query parameters from the iframe's URL
431     when the iframe's path is redirected. -->
432<script>
433    function topWindowLocationHref() {
434      try {
435        return window.top.location.href;
436      } catch (_error) { // explicitly ignored to avoid noise
437        // It's possible that the page is embedded in a cross-origin iframe, in which case,
438        // accessing window.top.location will throw.
439        // This creates a lot of noise in sentry, so catching and ignoring it here
440        return window.location.href;
441      }
442    }
443
444    document.addEventListener("DOMContentLoaded", function() {
445        if (shouldNotReplaceTopWithCurrent()) {
446            return;
447        }
448        try {
449            const currentUrl = new URL(window.location.href);
450            const topUrl = new URL(topWindowLocationHref());
451
452            const currentParams = new URLSearchParams(currentUrl.search);
453            const topParams = new URLSearchParams(topUrl.search);
454
455            for (const [key, value] of topParams) {
456                // do not append duplicate query parameters
457                if (!currentParams.has(key) && !Array.from(currentParams).some(([k, v]) => k === key)) {
458                    currentParams.append(key, value);
459                }
460            }
461
462            currentUrl.search = currentParams.toString();
463            window.top.history.pushState(null, '', currentUrl.toString());
464        } catch (error) {
465            console.error("An error occurred while updating query parameters:", error);
466        }
467    });
468
469    function shouldNotReplaceTopWithCurrent() {
470        if (window.location.href.split('?')[0] === topWindowLocationHref().split('?')[0]) {
471            return true;
472        }
473
474        if ("false" !== "true" && !topWindowLocationHref().includes(".preview.")) {
475            return true;
476        }
477
478        if ("false" === "true" || window.location.href.includes("viewMode=modal") || window.location.href.includes("viewMode%3Dmodal")) {
479            return true;
480        }
481
482        return false;
483    }
484</script>
484
485
486<script>
487    document.addEventListener("DOMContentLoaded", function () {
488        window.parent.postMessage({ name: 'previewIframeLoaded' }, '*');
489    });
490    /** Image lineup on mobile **/
491    window.addEventListener(BlocksRenderedEventName, function () {
492        function changeImageDirectionsOnMobile() {
493
494            const classListSection = $('body>div>section')?.attr('class')?.split(/\s+/);
495            const textClassSection = classListSection?.find(cls => cls.startsWith('feature'));
496
497            const classListHeader = $('body>div>header')?.attr('class')?.split(/\s+/);
498            const textClassHeader = classListHeader?.find(cls => cls.startsWith('hero'));
499
500            /*If FEATURE block*/
501            if (textClassSection) {
502                findRowsWidthImageAndReverse(textClassSection)
503            }
504
505            /*If HERO block*/
506            if (textClassHeader) {
507                findRowsWidthImageAndReverse(textClassHeader)
508            }
509        }
510
511        function findRowsWidthImageAndReverse(textClass) {
512            const rowsWithImages = $('.' + textClass + ' .row.align-items-center').has('img').toArray();
513            const rowsWithLeftSideImages = rowsWithImages.filter(row => {
514                return $(row).children().first().children().first().prop("tagName") === 'IMG';
515            });
516
517
518            rowsWithLeftSideImages.forEach(row => {
519                if ($(window).width() <= 768) {
520                    row.classList.add('flex-column-reverse')
521                }
522            });
523        }
524
525        if ($(window).width() <= 768) {
526            changeImageDirectionsOnMobile();
527        }
528    });
529
530    /** BG Size on mobile **/
531    window.addEventListener(BlocksRenderedEventName, function () {
532        if ($(window).width() <= 768) {
533            var element = $('section.sw-background-size-auto, header.sw-background-size-auto');
534            element.removeClass('sw-background-size-auto');
535            element.css('background-size', 'cover');
536
537            $('section.sw-background-attachment-fixed, header.sw-background-attachment-fixed').removeClass('sw-background-attachment-fixed');
538        }
539    });
540
541    /** Disable zoom on mobile **/
542    window.addEventListener(BlocksRenderedEventName, function () {
543        if ($(window).width() <= 768) {
544            $('input.sw-font-size-s').removeClass('sw-font-size-s');
545            $('textarea.sw-font-size-s').removeClass('sw-font-size-s');
546            $('select.sw-font-size-s').removeClass('sw-font-size-s');
547        }
548    });
549
550    window.addEventListener('user-sign-out', (e) => {
551        const message = {
552            name: 'user-sign-out-triggered',
553        };
554
555        window.parent.postMessage(message, '*');
556    });
557
558    function isSafari() {
559        const chromeAgent = window.navigator.userAgent.includes("Chrome");
560        const safariAgent = window.navigator.userAgent.includes("Safari");
561
562        // Google Chrome also contains "Safari" user agent.
563        return safariAgent && !chromeAgent;
564    }
565</script>
565
566
567<script>
568    // Detect PWA mode early (before any fullscreen API calls) and mark the document.
569    // This allows hiding elements in PWA even when it enters fullscreen,
570    // without affecting regular browser fullscreen mode.
571    if (window.matchMedia('(display-mode: standalone)').matches          // Chrome/Edge/Safari desktop & mobile PWA
572        || window.matchMedia('(display-mode: minimal-ui)').matches       // minimal-ui PWA
573        || window.matchMedia('(display-mode: window-controls-overlay)').matches // desktop PWA with custom title bar
574        || window.matchMedia('(display-mode: fullscreen)').matches       // PWA manifest set to fullscreen (safe at load time)
575        || window.navigator.standalone === true) {                       // iOS Safari home screen app
576        document.documentElement.classList.add('is-pwa');
577    }
578</script>
vendor: 1 bytes, line 578
578
579<script>
580    // When the transition SW activates Softr-native push, reload so the page
581    // initialises with push enabled in application_context.
582    if (navigator.serviceWorker) {
583        navigator.serviceWorker.addEventListener('message', function (e) {
584            if (e.data && e.data.type === 'softr-pwa-bootstrap') {
585                window.location.reload();
586            }
587        });
588    }
589</script>
589
590
591
592</head>
593
594<body>
595
596
597<div id="page-content" data-appsubdomain="toptierclosers.softr.app" data-appid="333a21e4-e9da-4e79-9250-e3d3dd6f2414" data-pageId="c28e2985-4ee8-4367-a365-f98b3c2f4021" data-workspaceid="cccdb788-4516-4ab1-80c7-8b54a2619524" data-paymentplan="price_1PmrXcIWZwIztnHl4pzYxY2f" class="content">
598
599</div>
600
601
602<!-- Scripts -->
603<script src="https://assets.softr-files.com/libs/jquery/3.7.0/jquery.min.js"></script>
vendor: 1 bytes, line 603
603
604<script src="https://assets.softr-files.com/libs/popper.js/1.14.7/umd/popper.min.js"></script>
vendor: 1 bytes, line 604
604
605<script
606  src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"
607  integrity="sha384-Fy6S3B9q64WdZWQUiU+q4/2Lc9npb8tCaSX9FK7E8HnRr0Jz8D6OP9dO5Vg3Q9ct"
608  crossorigin="anonymous">
609</script>
vendor: 1 bytes, line 609
609
610<script src="https://assets.softr-files.com/libs/micromodal/0.4.10/micromodal.min.js"></script>
610
611
612<script>
613    /** this function is called from list blocks (do not delete) **/
614    function openSwModal(url, size) {
615        MicroModal.init({
616            disableScroll: true,
617            awaitOpenAnimation: true,
618            awaitCloseAnimation: true
619        });
620
621        MicroModal.show("sw-modal");
622
623        const iframeElem = document.querySelector(".sw-modal-iframe");
624        const modalContainer = document.querySelector(".sw-modal-container");
625
626        const viewModeParam = "viewMode=modal";
627        const urlIsLocal = url.startsWith('#') || url.startsWith('/') || url.startsWith(window.location.origin);
628        const modalUrl = urlIsLocal ? (url.indexOf("?") !== -1 ? url + "&" + viewModeParam : url + "?" + viewModeParam) : url;
629        iframeElem.setAttribute("src", modalUrl);
630
631        modalContainer.classList.remove('sw-modal-size-sm', 'sw-modal-size-md', 'sw-modal-size-lg', 'sw-modal-size-xl');
632        modalContainer.classList.add('sw-modal-size-' + size);
633
634        setTimeout(() => {
635            // Add event listener to detect when the modal is closed
636            const closeButton = document.querySelector('.sw-modal-close');
637            const backdrop = document.querySelector('.sw-modal-overlay');
638
639            closeButton.addEventListener('click', resetIframe);
640            backdrop.addEventListener('click', resetIframe);
641        }, 1000)
642
643    }
644
645    const resetIframe = () => {
646        const iframeElem = document.querySelector('.sw-modal-iframe');
647        iframeElem.removeAttribute('src');
648    }
649</script>
649
650
651<script>
652    /** Bugfix on multiple ?recordId= issue **/
653    setInterval(function () {
654        $('section a').each(function () {
655            const href = $(this).attr('href');
656            if (href && href.includes('?recordId=')) {
657                const countOfRecords = (href.match(/\?recordId=/g) || []).length;
658                if (countOfRecords > 1) {
659                    const index = href.lastIndexOf('?recordId=');
660                    const cleanedHref = href.substring(0, index);
661                    $(this).attr('href', cleanedHref);
662                }
663            }
664        });
665    }, 1000);
666</script>
666
667
668<script type="text/javascript">
669    if (window.jQuery && window.jQuery.ajaxSetup) {
670        window.jQuery.ajaxSetup({
671            beforeSend: function (xhr, settings) {
672                if (settings && settings.url && (
673                    settings.url.includes('/integrations/airtable/')
674                    || settings.url.includes('/v1/applications/333a21e4-e9da-4e79-9250-e3d3dd6f2414')
675                    || settings.url.includes('/v1/comments')
676                    || settings.url.includes('/v3/comments')
677                    || settings.url.includes('/forms/form-to-email')
678                    || settings.url.includes('/forms/form-to-api'))
679                ) {
680                    xhr.setRequestHeader('softr-page-id', 'c28e2985-4ee8-4367-a365-f98b3c2f4021');
681                }
682            }
683        });
684    }
685
686    window['user-accounts1'] = {}; 
687var softrBlocks = [{"id":"e5d65a8e-e684-4be6-a974-7595a6ef773b","version":"5.0.8","hrid":"user-accounts1","name":"signIn","title":"Sign In","image":"https://softr-assets-eu-shared.s3.eu-central-1.amazonaws.com/studio/blocks/assets/sign-up1.png","category":"User Accounts","keywords":"contact form, simple, log in, Authentication, signin, sign in, sign up, with code, Authentication, login, passwordless, password-less","elements":{"definitions":{"supportedFieldTypes":["short_text","email","long_text","url","file","checkbox","rating","auto_sync_dropdown","number","date","dateTime","phone_number","signature","rich_text","hidden"]},"signInConfig":{"logoSize":"large","logoPosition":"top","title":"Welcome back!","subtitle":"Log in to continue","authMethods":{"EMAIL":{"continueButtonLabel":"Continue","oneTimeCodeStep":{"title":"Enter verification code","subtitle":"We just sent you a code. Please check your inbox.","redirectButton":"Continue with password instead"},"passwordStep":{"title":"Enter your password","subtitle":"","redirectButton":"Continue with one-time code instead"}},"GOOGLE":{"buttonLabel":"Continue with Google"},"SSO":{"buttonLabel":"Continue with SSO"}},"sideSection":{"enabled":true,"backgroundImage":"https://assets.softr-files.com/applications/333a21e4-e9da-4e79-9250-e3d3dd6f2414/assets/ea553d9a-91a9-4c4b-b3d3-bdf3084cbb57.jpeg","heading":{"enabled":false,"value":"Something important","variant":"title"},"text":{"enabled":false,"value":"Something less important"},"image":{"enabled":false,"value":"https://assets.softr-files.com/assets/blocks/v5/mock-images/abstract/05.jpg"},"order":["heading","text","image"]},"redirectConfig":{"enabled":false,"text":"Don't have an account?","linkLabel":"Sign up","page":"/sign-up"},"recaptcha":false,"hiddenAuthMethods":[],"logoEnabled":true,"forgotPasswordPage":"/forgot-password","consentMessage":{"enabled":false,"value":"By signing up, you agree to our Terms and Conditions & Privacy Policy"}},"container":{"styles":[{"type":"group","styles":[{"type":"control","controlType":"background","label":"Background","styles":[{"type":"control","controlType":"select","value":null,"fallback":{"type":"VALUE","value":"COLOR"},"options":["COLOR","IMAGE"],"optionsMeta":{"COLOR":{"label":"Solid color"},"IMAGE":{"label":"Image"}},"label":"Background style","key":"block.backgroundStyle"},{"type":"control","controlType":"color","value":null,"fallback":{"type":"THEME","key":"tokens.colors.background.default"},"label":"Background color","key":"block.backgroundColor","visible":{"operator":"EQUALS","key":"block.backgroundStyle","value":"COLOR"}},{"type":"control","controlType":"image","value":null,"fallback":{"type":"VALUE","value":null},"label":"Background image","key":"block.backgroundImage","visible":{"operator":"EQUALS","key":"block.backgroundStyle","value":"IMAGE"}}]},{"type":"control","controlType":"size","value":null,"fallback":{"type":"THEME","key":"config.size"},"options":["S","M","L"],"label":"Size","key":"block.size"},{"type":"control","controlType":"roundness","value":null,"fallback":{"type":"THEME","key":"config.roundness"},"options":["NONE","SUBTLE","STANDARD","SMOOTH","CIRCULAR"],"label":"Roundness","key":"block.roundness"},{"type":"control","controlType":"align","value":null,"fallback":{"type":"VALUE","value":"center"},"options":["start","center"],"label":"Content alignment","key":"block.alignment"},{"type":"control","controlType":"boolean","value":null,"fallback":{"type":"VALUE","value":true},"key":"surface.enabled","label":"Surface"},{"type":"control","controlType":"boolean","value":null,"fallback":{"type":"THEME","key":"config.shadow"},"key":"surface.shadow","label":"Surface shadow","visible":{"operator":"EQUALS","key":"surface.enabled","value":true}},{"type":"control","controlType":"color","value":null,"fallback":{"type":"THEME","key":"tokens.colors.dialog.background.idle"},"label":"Surface background","key":"surface.backgroundColor","visible":{"operator":"EQUALS","key":"surface.enabled","value":true}},{"type":"control","controlType":"border","label":"Border","styles":[{"type":"control","controlType":"color","value":null,"fallback":{"type":"THEME","key":"tokens.colors.border.primary"},"label":"Color","key":"surface.borderColor"},{"type":"control","controlType":"borderStyle","value":null,"fallback":{"type":"VALUE","value":"solid"},"options":["none","solid","dashed","dotted"],"label":"Border style","key":"surface.borderStyle"},{"type":"control","controlType":"borderWidth","value":null,"fallback":{"type":"VALUE","value":1},"options":[0,1,2,3,4],"label":"Border width","key":"surface.borderWidth"}],"visible":{"operator":"EQUALS","key":"surface.enabled","value":true}}],"expanded":false,"label":"General"}],"sideSectionStyles":[{"type":"group","styles":[{"type":"control","controlType":"placement","value":null,"fallback":{"type":"VALUE","value":"RIGHT"},"options":["LEFT","RIGHT"],"label":"Position","key":"position"}],"expanded":false,"label":"background"},{"type":"group","styles":[{"type":"control","controlType":"color","value":null,"fallback":{"type":"THEME","key":"tokens.colors.text.ui"},"label":"Color","key":"heading.color"}],"expanded":false,"label":"heading"},{"type":"group","styles":[{"type":"control","controlType":"color","value":null,"fallback":{"type":"THEME","key":"tokens.colors.text.ui"},"label":"Color","key":"text.color"}],"expanded":false,"label":"text"},{"type":"group","styles":[{"type":"control","controlType":"width","value":null,"fallback":{"type":"VALUE","value":"M"},"options":["XS","S","M","L"],"label":"Width","key":"image.width"},{"type":"control","controlType":"aspectRatio","value":null,"fallback":{"type":"VALUE","value":"AUTO"},"options":["1:1","4:3","16:9","AUTO"],"label":"Aspect ratio","key":"image.as
687pectRatio","visible":{"key":"image.fit","operator":"EQUALS","value":"FILL"}},{"type":"control","controlType":"select","value":null,"fallback":{"type":"VALUE","value":"FILL"},"options":["FILL","FIT"],"optionsMeta":{"FILL":{"label":"Cover"},"FIT":{"label":"Contain"}},"label":"Image fit","key":"image.fit","info":"Cover: Fill images to cover available space, cropping if needed. Best for photos or images with solid background.\n\nContain: Show the whole image in original aspect ratio. Best for logos and icons."}],"expanded":false,"label":"image"}]}},"type":"dynamic","collection":null,"enabled":"true","order":"null","updated":[{"date":[2025,1,8,12,8,46,112000000],"version":"5.0.1"},{"date":[2025,1,9,8,28,36,274000000],"version":"5.0.2"},{"date":[2025,1,10,12,18,14,249000000],"version":"5.0.3"},{"date":[2025,3,19,13,50,1,916000000],"version":"5.0.4"},{"date":[2026,3,23,14,5,34,118000000],"version":"5.0.5"},{"date":[2026,3,23,14,5,34,118000000],"version":"5.0.6"},{"date":[2026,3,23,14,5,34,118000000],"version":"5.0.7"},{"date":[2026,3,23,14,5,34,118000000],"version":"5.0.8"}],"visibility":{"userGroup":{"predefinedUserGroupType":"NON_LOGGED_IN_USERS","customUserGroupIds":[],"enabledPredefinedUserGroupTypes":["NON_LOGGED_IN_USERS"]},"devices":["laptop","tablet","mobile"],"detailsPageRecordCondition":null},"settings":{},"container":null,"presets":null,"created_at":"2025-01-02T18:21:36.398"}];
688softrBlocks.forEach(function(block) {
689  var blockUniqueName = block.id.replace(/-/g, '');
690  window['block_' + blockUniqueName + '_defJson'] = block;
691  window['block_' + blockUniqueName + '_defJson']['defaultTheme'] = reactDefaultThemes;
692});
693SoftrPageRenderer.render({blocks: softrBlocks, targetElement: document.getElementById('page-content'), workspaceId: "cccdb788-4516-4ab1-80c7-8b54a2619524", appId: "333a21e4-e9da-4e79-9250-e3d3dd6f2414", pageId: "c28e2985-4ee8-4367-a365-f98b3c2f4021", showMadeWithBadge: true, badgeType: "FLOATING_BADGE", aiApp: false, paymentPlan: "price_1PmrXcIWZwIztnHl4pzYxY2f", baseUrl: "https://assets.softr-files.com/softr-blocks/prod/blocks", theme: reactDefaultThemes, appCustomHeaderCode: "", pageCustomHeaderCode: "", appCustomFooterCode: "", pageCustomFooterCode: "", featureFlags: {"navigationLayout": true, "fixedBlockRoots": true, "universalDSForAirtable": true, }, context: {"application_context": {"application_logo":{"type":"IMAGE","icon":{"logo":"","text":""},"image":{"horizontal":"https://assets.softr-files.com/applications/333a21e4-e9da-4e79-9250-e3d3dd6f2414/assets/bf9c3510-0b10-4a0a-bab1-db127e73bce7.png","square":"https://assets.softr-files.com/applications/333a21e4-e9da-4e79-9250-e3d3dd6f2414/assets/3807dfb2-bdfc-4ba1-af84-db3618ab3ca7.png"}},"date_and_time_settings":{"format_settings":{"type":"LOCAL","local_settings":{"localize_day_and_month":true},"fixed_settings":null},"timezone_settings":{"type":"LOCAL","fixed_timezone":null}},"number_formatting_settings":{"type":"LOCAL","fixed_locale":"en-US"},"global_search_settings":{"enabled":false,"search_placeholder":"Search","initial_state_message":"Type something to start searching","initial_state_image":null,"no_results_message":"No results found","no_results_image":null,"backdrop":null},"user_settings":{"auth_settings":{"login_enabled":true,"authentication_methods":["EMAIL"],"sign_up_settings":{"policy":"DISABLED","allowed_domains":[]},"user_session_expiration":"90_DAYS","user_inactivity_timeout":"NEVER","email_auth_settings":{"login_methods":["PASSWORD","EMAIL_CODE"],"password_settings":{"input_label":"Password","input_placeholder":"Enter your password","forgot_password_text":"Forgot password","incorrect_password_text":"Incorrect password.","new_password_label":"New password","new_password_placeholder":"Set a secure password","strong_passwords":true,"minimum_characters_text":"At least 12 characters","upper_and_lower_case_text":"1 uppercase & 1 lowercase","number_text":"1 number (0-9)","symbol_text":"1 symbol (!@#$%^&*)","repeat_password_label":"Repeat password","repeat_password_placeholder":"Repeat your password","passwords_dont_match_text":"Passwords don't match."},"email_one_time_code_settings":{"expiration":"5_MINUTES","input_label":"Verification code","input_placeholder":"Enter verification code","resend_text":"Resend","invali
693d_code_text":"Invalid code."},"secondary_login_methods":[],"sms_one_time_code_settings":null,"authenticator_settings":null,"input_label":"Email","input_placeholder":"Enter your email"},"google_settings":{"client_id":null,"client_secret":null,"user_type":"INTERNAL","email_domains":[]},"sso_settings":{"type":"SAML","email_domains":[],"saml":{"acs_url":null,"audience_url":null,"metadata_xml":null,"email_key":null,"first_name_key":null,"last_name_key":null},"open_id":{"callback_url":null,"provider_url":null,"token_service_url":null,"client_id":null,"client_secret":null}},"authenticator_app_settings":{"enabled":false,"general_settings":{"email_pairing":"OPTIONAL","google_pairing":"OPTIONAL","sso_pairing":"OPTIONAL"},"setup_settings":{"setup_prompt":{"title":"Secure your account with 2FA","subtitle":"Set up an authenticator app to make your account more secure","skip_button":"Not now","setup_button":"Set up"},"setup_instruction":{"title":"Set up authenticator app","qr_desktop":"Scan the QR code below with an authenticator app","mobile_text":"Click the button below to set up an authenticator app","mobile_button":"Open authenticator","manual_code":"Or enter the setup code manually","verify_placeholder":"Enter the 6-digit code from your authenticator app","incorrect_error":"Incorrect code. Please try again"},"backup_codes":{"title":"Save your backup codes","description":"Use these codes if you lose access to your authenticator app. Each code will only work once.\n\nThis is your only chance to copy them. Please save them somewhere safe.","download_button":"Download","copy_button":"Copy","print_button":"Print","hide_done_until_action":true,"done_button":"Done"}},"login_settings":{"code_input":{"label":"Enter the 6-digit code from your authenticator app","use_backup_code_link":"Use backup code instead","incorrect_error":"Incorrect code. Please try again"},"backup_code":{"back_button":"Back","input_label":"Enter one of your backup codes","invalid_code_error":"This code is either invalid or has been used","additional_recovery_instruction":"If you have trouble finding your backup codes, please contact your application's admin for assistance.","continue_button":"Continue","reset_authenticator_toast":"Reset your authenticator to avoid getting locked out","reset_button":"Reset"}},"account_settings":{"authenticator_field":{"label":"Authenticator","enabled_status":"Enabled","setup_button":"Set up","reset_button":"Reset","remove_button":"Remove"},"reset_or_remove_flow":{"title":"Let's verify it's you","subtitle":"Please enter the verification code we just sent to your email","continue_button":"Continue","reset_success_message":"Your authenticator app has changed. Please make sure to log in with the new authenticator next time.","remove_success_message":"Your authenticator app has been removed."}}}},"auto_invite":true},"user_connection":{"datasource":{"id":"9821c768-6232-42af-8b8c-5cca0a196e10","datasource_integration_type":"SOFTR_TABLES"},"attributes":{"nameFieldName":"DmhDn","emailFieldName":"lco6l","profilePictureFieldName":"qBRwS"}},"user_group_redirection":null,"polling_configs":{"defaultPollingInterval":10000,"datasources":{"SQL_SERVER":8000,"ZOHO_CRM":8000,"MARIADB":8000,"MYSQL":8000,"XANO_SQL":8000,"SALESFORCE":8000,"GOOGLE_SHEET":8000,"SUPABASE":8000,"NOTION":8000,"SMARTSUITE":8000,"MONDAY":8000,"SOFTR_TABLES":8000,"SHAREPOINT":8000,"CLICKUP":8000,"CODA":8000,"MICROSOFT_EXCEL":8000,"SNOWFLAKE":8000,"AIRTABLE":8000,"POSTGRESQL":8000}},"comment_settings":{"general_settings":{"allow_mentions":false,"allow_attachments":true,"rich_text_formatting":false,"notifications_enabled":true,"block_display_settings":{"sort_direction":"OLDEST_ON_TOP","surface":false,"show_vertical_line":false},"side_panel_display_settings":{"sort_direction":"OLDEST_ON_TOP","surface":false,"show_vertical_line":false,"comment_panel_display_mode":"COVER_MAIN_CONTENT"},"keep_comments_for_inactive_users":true,"comment_deletion_user_groups":[]},"message_settings":{"comment_list_title":"Comments","comment_box_placeholder":"Leave a comment...","notifications_toggle_label":"Notifications","submit_button":{"label":"Submit","icon":""},"cancel_button":{"label":"Cancel","icon":""},"edit_button":{"label":"Edit","icon":"edit-02"},"delete_button":{"label":"Delete","icon":"trash-01"},"load_more_comments_button":{"label":"Load more comments","icon":""},"empty_state_message":"No comments yet","edited_comment_indicator":"(edited)"},"mention_permissions":[],"comment_block_settings":[]},"push_notification_settings":{"desktop_enabled":false,"mobile_enabled":false,"permission_prompt":null,"vapid_public_key":"BBugfIG6rCfoscP1EA9Jvt-KLWBNgWCNSNaleAQM4fA1fCQQpyj2BTbb4pliE3vg2cVL8CcOt7SuNczkbW1I4c8"},"in_app_notification_settings":{"enabled":false,"default_icon":"https://assets.softr-files.com/applications/333a21e4-e9da-4e79-9250-e3d3dd6f2414/assets/3807dfb2-bdfc-4ba1-af84-db3618ab3ca7.png","button_label":"Notifications","button_icon":"bell-01","all_tab_name":"All","all_tab_empty_message":"No notifications.","unread_tab_name":"Unread","unread_tab_empty_message":"No unread notifications.","filter_all_option":"All notifications","filter_comments_option":"Comments only","mark_all_as_read_label":"Mark all as read","mark_as_read_label":"Mark as read","mark_as_unread_label":"Mark as unread","mark_as_read_icon":"check-square","mark_as_unread_icon":"notification-box"},"pwa_settings":null,"spa_mode_enabled":true,"agents":[]}}}).then(() => window.dispatchEvent(new Event("@softr/page-content-loaded")));
694
695</script>
695
696
697
698<script src="https://assets.softr-files.com/libs/iframe-resizer/4.2.11/iframeResizer.contentWindow.min.js" crossorigin="anonymous"></script>
698
699
700<!-- Localhost -->
701<script type="text/javascript">
702    if (window.location.hostname === 'localhost') {
703        if (getUrlParam('domain')) {
704            setCookie('serverName', getUrlParam('domain'), 30);
705        }
706    }
707
708    function setCookie(name, value, days) {
709        var date = new Date();
710        date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
711        var expires = "expires=" + date.toUTCString();
712        document.cookie = name + "=" + value + ";" + expires + ";path=/;" + "SameSite=None; Secure";
713    }
714
715    function getUrlParam(name) {
716        const url = new URL(window.location.href);
717        let param;
718        for (var key of url.searchParams.keys()) {
719            if (key.toLowerCase() === name.toLowerCase()) {
720                param = url.searchParams.get(name);
721                break;
722            }
723        }
724        return param;
725    }
726</script>
726
727
728<!-- Modal HTML -->
729<div id="sw-modal" class="sw-modal" aria-hidden="true">
730    <div class="sw-modal-overlay" data-micromodal-close>
731        <div tabindex="-1" class="sw-modal-container">
732            <div role="dialog" aria-modal="true" aria-labelledby="micromodal-title">
733                <button aria-label="Close modal" class="sw-modal-close" onclick="MicroModal.close('sw-modal')"></button>
734                <div id="sw-modal-content">
735                    <iframe class="sw-modal-iframe"></iframe>
736                </div>
737            </div>
738        </div>
739    </div>
740</div>
741
742<!--Scroll to section-->
743<script>
744
745    window.addEventListener(BlocksRenderedEventName, function () {
746        $('a').each(function (index, el) {
747            let href = $(el).attr('href');
748            let path = cleanSlugFromPath(location.pathname);
749            if (href && href.startsWith(path + '#')) {
750                const scrollTo = href.split('#')[1];
751                $(this).attr('href', '#' + scrollTo);
752            }
753        });
754
755        function cleanSlugFromPath(pagePath) {
756            if (pagePath.includes("/r/rec")) {
757                pagePath = pagePath.substring(0, pagePath.indexOf("/r/rec"));
758                pagePath = pagePath.substring(0, pagePath.lastIndexOf("/"));
759            }
760
761            return pagePath + (pagePath.endsWith('/') ? '' : '/');
762        }
763    });
764
765</script>
765
766
767</body>
768
769</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.