:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-synthesis:none;color:#17131f;background:#f5f3fa}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px;background:#f5f3fa}button,input,select,textarea{font:inherit}.portal-auth{min-height:100dvh;display:grid;grid-template-columns:minmax(390px,48%) minmax(430px,52%);overflow:hidden;color:#17131f;background:#f5f3fa}.portal-auth-brand{position:relative;min-height:100dvh;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;overflow:hidden;background:radial-gradient(circle at 50% 42%,rgba(98,48,205,.32),transparent 34%),linear-gradient(145deg,#170760,#241078 52%,#120550)}.brand-glow{position:absolute;width:310px;height:310px;border-radius:50%;background:radial-gradient(circle,rgba(255,91,37,.12),transparent 66%);filter:blur(10px)}.portal-auth-brand>img{position:relative;width:clamp(150px,14vw,220px);height:clamp(150px,14vw,220px);object-fit:contain;filter:drop-shadow(0 12px 28px rgba(8,2,45,.3))}.portal-wordmark{position:relative;margin-top:14px;display:flex;align-items:baseline;justify-content:center;letter-spacing:-4px}.portal-wordmark strong{color:#fff;font-size:clamp(56px,5.4vw,86px);line-height:1}.portal-wordmark strong:last-child{color:#ff5a2a}.portal-auth-brand>p{position:relative;margin:18px 0 0;color:#e4dfff;font-size:clamp(14px,1.1vw,18px);font-weight:550;letter-spacing:.2px}.portal-auth-brand em{font-family:Georgia,Times New Roman,serif}.portal-auth-side{position:relative;min-height:100dvh;padding:54px clamp(42px,6vw,96px) 76px;display:flex;align-items:center;background:#fff;border-radius:28px 0 0 28px;box-shadow:-14px 0 40px #1407491f}.portal-auth,.portal-auth-side{scrollbar-width:none}.portal-auth::-webkit-scrollbar,.portal-auth-side::-webkit-scrollbar{display:none}.portal-auth-card{width:100%;max-width:480px;margin:auto}.portal-auth-card>small{color:#4b20bf;font-size:11px;font-weight:850;letter-spacing:.9px}.portal-auth-card h1{margin:12px 0 8px;color:#171321;font-size:clamp(36px,3vw,46px);letter-spacing:-1.5px;line-height:1.06}.portal-auth-card>p,.portal-auth-card form>p{margin:0 0 32px;color:#756e81;font-size:clamp(14px,1.1vw,17px);line-height:1.5}.portal-auth-card label{display:grid;gap:8px;margin:19px 0}.portal-auth-card label>span{font-size:13px;font-weight:750}.portal-auth-card input{width:100%;height:56px;padding:0 54px 0 16px;border:1px solid #d7d2df;border-radius:14px;color:#191522;background:#fff;outline:0;font-size:15px;transition:border-color .2s,box-shadow .2s}.portal-auth-card input:focus{border-color:#4b20bf;box-shadow:0 0 0 3px #eee9ff}.auth-input{position:relative}.auth-input>svg{position:absolute;right:17px;top:18px;width:20px;color:#746d80}.auth-input>button{position:absolute;right:8px;top:8px;width:40px;height:40px;border:0;border-radius:10px;display:grid;place-items:center;color:#716979;background:#f4f1f7}.auth-input>button svg{width:19px}.auth-input:has(button)>svg{right:17px}.login-options{min-height:26px;margin:-3px 2px 14px;display:flex;align-items:center;justify-content:flex-end}.login-options>button,.auth-back{border:0;color:#4b20bf;background:transparent;font-size:12px;font-weight:750;cursor:pointer}.portal-auth-submit{width:100%;min-height:56px;margin-top:7px;border:0;border-radius:14px;color:#fff;background:linear-gradient(100deg,#5121c7,#3d149f);box-shadow:0 12px 24px #4317a62e;font-size:15px;font-weight:800;cursor:pointer}.portal-auth-submit:disabled{cursor:not-allowed;opacity:.68}.portal-auth-error,.portal-auth-success,.demo-reset-code{margin:12px 0;padding:11px 13px;border-radius:10px;font-size:11px}.portal-auth-error{color:#a22828;background:#ffeded}.portal-auth-success{color:#17693a;background:#e9f8ee}.demo-reset-code{color:#654500;background:#fff4d6}.portal-session-note{max-width:none;margin:15px auto 0!important;color:#827b8b!important;font-size:10px!important;line-height:1.45;text-align:center!important;white-space:nowrap}.portal-copyright{position:absolute;right:30px;bottom:28px;left:30px;color:#918a99;font-size:10px;line-height:1.4;text-align:center}.recovery-card form>p{margin-bottom:23px;font-size:14px}.recovery-card input{height:54px;font-size:14px}.auth-back{margin:0 0 24px;padding:0;display:flex;align-items:center;gap:6px}.auth-back svg{width:17px}@media(max-width:800px){.portal-auth{grid-template-columns:1fr;overflow:auto;background:#fff}.portal-auth-brand{min-height:205px;padding:22px 20px 32px}.portal-auth-brand>img{width:78px;height:78px}.brand-glow{width:170px;height:170px}.portal-wordmark{margin-top:5px;letter-spacing:-2px}.portal-wordmark strong{font-size:40px}.portal-auth-brand>p{margin-top:7px;font-size:11px}.portal-auth-side{min-height:calc(100dvh - 185px);margin-top:-20px;padding:34px 22px 58px;border-radius:24px 24px 0 0;box-shadow:0 -10px 28px #0c04391c}.portal-auth-card h1{font-size:34px}.portal-auth-card>p{margin-bottom:25px;font-size:14px}.portal-auth-card input,.portal-auth-submit{min-height:54px}.auth-input>svg{top:17px}.auth-input>button{top:7px}.portal-session-note{white-space:normal}.portal-copyright{bottom:18px;font-size:9px}}.portal-register-link{width:100%;margin:14px 0 0;border:0;color:#4b20bf;background:transparent;font-size:12px;font-weight:750;cursor:pointer}.registration-card{max-width:620px}.registration-card h1{font-size:36px}.registration-card>p{margin-bottom:18px}.registration-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.registration-grid label{margin:9px 0}.registration-grid input,.registration-grid select{width:100%;height:48px;padding:0 14px;border:1px solid #d7d2df;border-radius:12px;background:#fff;font-size:13px}.registration-grid select{color:#191522}.registration-wide{grid-column:1/-1}.registration-consent{margin:12px 0 4px!important;font-size:10px!important}@media(max-width:800px){.registration-grid{grid-template-columns:1fr}.registration-wide{grid-column:auto}.registration-card h1{font-size:31px}}.trial-benefit{display:flex;align-items:flex-start;gap:10px;margin:9px 0;padding:12px 14px;border:1px solid #d8cdf8;border-radius:12px;color:#36216e;background:#f6f2ff}.trial-benefit strong{flex:0 0 auto;font-size:12px}.trial-benefit span{font-size:10px;line-height:1.45}.portal-guest-button{width:100%;min-height:50px;margin-top:11px;border:1px solid #4b20bf;border-radius:14px;color:#4b20bf;background:#fff;font-size:13px;font-weight:800;cursor:pointer}.portal-registration-options{margin-top:17px;padding-top:15px;border-top:1px solid #ece8f2;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.portal-registration-options span{width:100%;color:#756e81;font-size:10px;text-align:center}.portal-registration-options button{border:0;color:#4b20bf;background:transparent;font-size:11px;font-weight:750;cursor:pointer}@media(min-width:801px){.portal-auth,.portal-auth-brand{height:100dvh;min-height:0}.portal-auth-side{height:100dvh;min-height:0;padding:18px clamp(36px,5vw,82px);overflow-y:auto}.portal-auth-card{max-width:500px}.portal-auth-card h1{margin:0 0 5px;font-size:38px}.portal-auth-card>p,.portal-auth-card form>p{margin-bottom:14px;font-size:14px}.portal-auth-card label{gap:6px;margin:10px 0}.portal-auth-card input{height:48px}.auth-input>button{top:4px}.login-options{min-height:20px;margin:-1px 2px 6px}.portal-auth-submit{min-height:48px;margin-top:4px}.portal-passkey-button{min-height:48px;margin-top:8px}.portal-passkey-note{margin-top:5px!important;line-height:1.25!important}.portal-client-register-button{min-height:48px;margin-top:12px}.portal-guest-button{min-height:44px;margin-top:8px}.portal-registration-options{margin-top:10px;padding-top:9px;gap:7px}.portal-registration-options span{line-height:1.2}.portal-copyright{bottom:8px}}.portal-wordmark strong{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:800}.portal-auth-brand em{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-style:italic;font-weight:550}.portal-auth-brand .portal-copyright{position:relative;right:auto;bottom:auto;left:auto;margin-top:18px;color:#ffffffa3;font-size:10px;line-height:1.4;text-align:center}@media(max-width:800px){.portal-auth-brand .portal-copyright{margin-top:10px;font-size:8px}}.trial-benefit-prominent{margin:18px 0 20px;padding:16px;align-items:center;background:linear-gradient(135deg,#f5f1ff,#fff8f3)}.trial-benefit-prominent>div{display:grid;gap:4px}.trial-benefit-prominent strong{font-size:14px}.trial-benefit-prominent span{font-size:11px}.trial-badge{padding:8px 9px;border-radius:9px;color:#fff!important;background:#4b20bf;font-size:10px!important;font-weight:850;letter-spacing:.6px;white-space:nowrap}.registration-section-title{margin:18px 0 6px;padding-top:14px;border-top:1px solid #ece8f2;display:grid;gap:3px}.registration-section-title:first-child{margin-top:3px;padding-top:0;border-top:0}.registration-section-title strong{font-size:14px;color:#21172e}.registration-section-title span{font-size:10px;color:#756e81}.ecuador-phone{height:48px;display:flex;align-items:center;border:1px solid #d7d2df;border-radius:12px;background:#fff;overflow:hidden}.ecuador-phone:focus-within{border-color:#4b20bf;box-shadow:0 0 0 3px #eee9ff}.ecuador-phone>span{padding:0 12px;border-right:1px solid #e6e1eb;color:#332740;font-size:12px;font-weight:750;white-space:nowrap}.registration-grid .ecuador-phone input{height:46px;padding:0 12px;border:0;border-radius:0;box-shadow:none}.business-logo-field{cursor:pointer}.visually-hidden-file{position:absolute!important;width:1px!important;height:1px!important;opacity:0;pointer-events:none}.logo-uploader{min-height:92px;padding:13px;border:1px dashed #bcb0dc;border-radius:14px;display:grid;grid-template-columns:64px 1fr auto;align-items:center;gap:13px;background:#fbfaff}.logo-preview{width:64px;height:64px;border-radius:13px;display:grid;place-items:center;overflow:hidden;color:#4b20bf;background:#eee9ff}.logo-preview img{width:100%;height:100%;object-fit:cover}.logo-preview svg{width:25px}.logo-uploader>div:nth-child(2){display:grid;gap:4px}.logo-uploader>div:nth-child(2) strong{font-size:13px}.logo-uploader>div:nth-child(2) span{color:#756e81;font-size:10px;font-weight:500}.logo-uploader>b{padding:8px 10px;border:1px solid #d3c8ef;border-radius:9px;color:#4b20bf;background:#fff;font-size:10px}.address-input{position:relative}.address-input svg{position:absolute;left:14px;top:14px;width:18px;color:#796f86}.registration-grid .address-input input{padding-left:42px}.location-picker{padding:14px;border:1px solid #ded7e9;border-radius:14px;background:#faf9fc}.location-picker>button{min-height:42px;padding:0 15px;border:0;border-radius:10px;display:flex;align-items:center;justify-content:center;gap:7px;color:#fff;background:#4b20bf;font-size:11px;font-weight:800;cursor:pointer}.location-picker>button svg{width:17px}.coordinate-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.coordinate-fields label{margin:11px 0}.location-picker iframe,.map-placeholder{width:100%;height:190px;border:0;border-radius:12px}.map-placeholder{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;color:#756e81;background:#f0edf4}.map-placeholder svg{width:26px;color:#4b20bf}.map-placeholder strong{font-size:12px}.map-placeholder span,.location-picker>small{font-size:9px}.location-picker>small{display:block;margin-top:7px;color:#655d70}@media(max-width:800px){.logo-uploader{grid-template-columns:58px 1fr}.logo-uploader>b{grid-column:1/-1;text-align:center}.coordinate-fields{grid-template-columns:1fr}}.field-help{display:block;margin-top:-3px;color:#776f82;font-size:9px;font-weight:500;line-height:1.35}.location-picker>button{width:100%;margin-bottom:12px}.gps-confirmed{margin-top:10px;padding:10px 12px;border:1px solid #bfe5ce;border-radius:10px;display:flex;align-items:center;gap:9px;color:#12683a;background:#f0fbf5}.gps-confirmed>svg{width:18px}.gps-confirmed>div{display:grid;gap:2px}.gps-confirmed strong{font-size:11px}.gps-confirmed span{font-size:9px}.registration-section-title{grid-template-columns:28px 1fr;align-items:center}.registration-section-title>b{width:25px;height:25px;border-radius:8px;display:grid;place-items:center;color:#fff;background:#4b20bf;font-size:10px}.registration-section-title>div{display:grid;gap:3px}.registration-first-step{margin-top:3px;padding-top:0;border-top:0}.registration-map{overflow:hidden;border:1px solid #ded8e7;border-radius:12px;background:#fff}.registration-map .leaflet-container,.registration-map .google-map-picker{width:100%;height:255px;font-family:inherit}.registration-map-help{min-height:54px;padding:10px 12px;display:flex;align-items:center;gap:9px;border-top:1px solid #e8e3ed}.registration-map-help>svg{width:18px;color:#4b20bf}.registration-map-help>div{display:grid;gap:2px}.registration-map-help strong{font-size:10px}.registration-map-help span{color:#756e81;font-size:9px}.trial-benefit-bottom{margin:18px 0 8px}.gps-confirmed span{max-width:470px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:800px){.registration-map .leaflet-container,.registration-map .google-map-picker{height:220px}.gps-confirmed span{white-space:normal}}.google-map-picker,.google-map-picker>div:first-child{width:100%;height:100%}.google-map-picker{position:relative}.google-map-loading{position:absolute;z-index:3;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;justify-items:center;gap:6px;text-align:center;color:#5b3aa0;background:linear-gradient(135deg,#f5f1ff,#fff)}.google-map-loading svg{width:30px;animation:mapSpin 1s linear infinite}.google-map-loading strong{font-size:12px}.google-map-loading span{max-width:300px;color:#756e81;font-size:9px}@keyframes mapSpin{to{transform:rotate(360deg)}}.google-map-tip{position:absolute;z-index:2;left:10px;right:10px;bottom:10px;min-height:34px;padding:7px 10px;border-radius:9px;display:flex;align-items:center;gap:6px;color:#35234d;background:#fffffff0;box-shadow:0 3px 14px #1b0f312e;font-size:9px;font-weight:700}.google-map-tip svg{width:14px;color:#4b20bf}.google-map-state{width:100%;height:100%;min-height:220px;padding:24px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;text-align:center;color:#6b5688;background:#f5f1fb}.google-map-state svg{width:28px;color:#e0732f}.google-map-state strong{font-size:12px}.google-map-state span{max-width:360px;font-size:9px;line-height:1.5}.google-map-state.error{color:#8d342c;background:#fff1ef}.portal-auth-notice{padding:12px 14px;border:1px solid #b9dfc5;border-radius:11px;color:#185d35;background:#eff9f2;font-size:10px;line-height:1.5}.legal-acceptance-card{margin:16px 0;padding:16px;border:1px solid #d9cef5;border-radius:14px;background:#f8f5ff}.legal-acceptance-card>strong{font-size:14px}.legal-acceptance-card>p{margin:5px 0 12px;color:#6f6879;font-size:10px}.legal-acceptance-card>label{margin:8px 0;display:flex;align-items:flex-start;gap:9px;color:#40384a;font-size:10px;line-height:1.45}.legal-acceptance-card input{width:17px;height:17px;margin:0;accent-color:#4b20bf}.legal-acceptance-card a{color:#4b20bf;font-weight:800}.legal-acceptance-card>div{margin-top:11px;padding-top:10px;border-top:1px solid #e3dcf2}.portal-passkey-button{width:100%;min-height:54px;margin-top:10px;border:1px solid #5a2dcc;border-radius:14px;display:flex;align-items:center;justify-content:center;gap:9px;color:#3f17b5;background:#fff;font-weight:900;cursor:pointer}.portal-passkey-button:hover{background:#f6f2ff}.portal-passkey-button:disabled{opacity:.5;cursor:not-allowed}.portal-passkey-button svg{width:21px}.portal-passkey-note{margin:8px 0 0!important;text-align:center;color:#7c7485!important;font-size:9px!important;line-height:1.45}.audience-card{max-width:640px}.audience-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.audience-grid>button{min-height:112px;padding:18px;border:1px solid #e0d9eb;border-radius:18px;display:grid;grid-template-columns:42px 1fr;align-items:center;gap:13px;text-align:left;color:#21172e;background:#fff;cursor:pointer;transition:.2s}.audience-grid>button:hover{border-color:#6d3bd0;transform:translateY(-2px);box-shadow:0 12px 28px #391b6f1a}.audience-grid svg{width:42px;height:42px;padding:10px;border-radius:13px;color:#4b20bf;background:#eee9ff}.audience-grid span,.audience-grid strong,.audience-grid small{display:block}.audience-grid small{margin-top:5px;color:#756e81;line-height:1.4}.audience-existing{width:100%;margin-top:14px;padding:12px;border:0;color:#4b20bf;background:transparent;font-weight:800;cursor:pointer}@media(max-width:600px){.audience-grid{grid-template-columns:1fr}.audience-grid>button{min-height:86px;padding:13px}.audience-card h1{font-size:30px}}
