/* Shared authentication component; safe to load on a public host page. */
.auth-screen{margin:0;background:#f1f2f5;font-family:system-ui,-apple-system,sans-serif;color:#171923}
.auth-screen *,.sciel-auth,.sciel-auth *{box-sizing:border-box}
.sciel-auth{--accent:var(--action-bg,#27272a);--accent-hover:var(--action-hover,#3f3f46);--focus:#737373;--accent-soft:#f0f0f0;--accent-line:#a1a1aa;font-family:system-ui,-apple-system,sans-serif;color:#171923;text-align:left}
.sciel-auth button,.sciel-auth input,.sciel-auth select{font:inherit}
.sciel-auth a{color:var(--action-bg,#27272a);text-decoration:none}.sciel-auth a:hover{text-decoration:underline}
.sciel-auth button{cursor:pointer}.sciel-auth svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.sciel-auth button svg{width:19px;height:19px}.sciel-auth [hidden]{display:none!important}
.sciel-auth :is(button,a):focus-visible{outline:3px solid #aebcff;outline-offset:3px}
.auth-stage{position:relative;min-height:calc(100dvh - 46px);display:grid;place-items:center;padding:24px 20px 12px}
.auth-card{width:min(100%,460px);background:#fff;border:1px solid #ffffff8c;border-radius:22px;padding:36px 36px 25px;box-shadow:0 18px 70px #14192722}
.auth-brand-link{display:table;margin:0 auto 28px;border-radius:4px}.auth-brand-link:hover{text-decoration:none}.auth-brand-link .platform-brand{gap:14px}.auth-brand-link .platform-brand>img{width:32px;height:52px}.auth-brand-link .platform-wordmark{font-size:32px}
.auth-heading{text-align:center;margin-bottom:28px}.auth-heading h1{font-size:26px;font-weight:500;line-height:1.3;letter-spacing:-.7px;margin:0 0 10px}.auth-heading p{font-size:13px;line-height:1.6;color:#7a7e87;margin:0;max-width:36ch;margin-inline:auto}
.auth-fields{display:grid;gap:18px}.sciel-auth .field{min-width:0}.sciel-auth .field label{display:block;margin:0 0 7px;font-size:12px;font-weight:500;color:#30333c}.sciel-auth .field input{display:block;width:100%;height:44px;padding:11px 13px;border:1px solid #d9dce3;border-radius:7px;background:#fff;color:#20232c;font-size:14px;outline:none;transition:border-color .18s,box-shadow .18s}.sciel-auth .field input::placeholder{color:#9b9ea7;opacity:1}.sciel-auth .field input:hover{border-color:#aeb3c1}.sciel-auth .field input:focus{border-color:#7187ee;box-shadow:0 0 0 3px #eff2ff}.sciel-auth .field input[aria-invalid=true]{border-color:#bf5964}.sciel-auth .field small{display:block;font-size:11px;line-height:1.45;color:#858994;margin-top:6px}.password-field{position:relative}.password-field input{padding-right:45px}.password-toggle{position:absolute;right:3px;top:3px;display:grid;place-items:center;width:38px;height:38px;border:0;border-radius:5px;color:#8b8e98;background:transparent}.password-toggle:hover{color:var(--action-bg,#27272a);background:#f5f6fa}.eye-slash{display:none}.password-toggle[aria-pressed=true] .eye-slash{display:block}
.login-submit{display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--action-bg,#27272a);border-radius:7px;width:100%;min-height:44px;margin-top:24px;padding:11px 16px;background:var(--action-bg,#27272a);color:#fff;font-size:13px;font-weight:500;transition:background .18s,border-color .18s,transform .18s}.login-submit:hover{background:var(--action-hover,#3f3f46);border-color:var(--action-hover,#3f3f46)}.login-submit:active{transform:translateY(1px)}.login-submit:disabled{opacity:.7;cursor:wait}.login-submit svg{width:17px}.auth-switch{border-top:1px solid #eeeff3;text-align:center;margin-top:27px;padding-top:23px;font-size:12px;line-height:1.8;color:#80838d}.auth-switch a{font-weight:500;margin-left:3px}.auth-security{display:flex;align-items:center;justify-content:center;gap:7px;font-size:10px;line-height:1.5;color:#9599a3;text-align:center;margin:22px 0 0}.auth-security svg{width:13px;height:13px;flex-shrink:0}.auth-footer{position:relative;display:flex;align-items:center;justify-content:center;gap:9px;height:46px;font-size:11px;color:#636873;padding:0 16px;text-align:center}.auth-footer span{opacity:.6}
.auth-errors,.auth-message{font-size:12px;line-height:1.6;border:1px solid #ead6d9;background:#fff8f8;color:#9f3a49;border-radius:7px;padding:10px 12px;margin-bottom:18px}.auth-errors ul,.sciel-auth .field-errors ul{list-style:none;padding:0;margin:0}.sciel-auth .field-errors{color:#a73f4d;font-size:11px;line-height:1.5;margin-top:6px}.auth-next-step{font-size:11px;line-height:1.6;color:#858994;text-align:center;margin:13px 0 0}
.auth-card.signup-screen{max-width:540px;width:100%;padding-top:28px}.signup-screen .auth-brand-link{margin-bottom:20px}.signup-screen .auth-heading{margin-bottom:23px}.signup-screen .auth-heading h1{font-size:24px}.signup-fields{grid-template-columns:1fr 1fr;gap:17px 16px}.sciel-auth .signup-fields .field-name{order:0}.sciel-auth .signup-fields .field-company{order:1}.sciel-auth .signup-fields .field-email{order:2}.sciel-auth .signup-fields .field-phone{order:3}.sciel-auth .signup-fields .field-city{order:4}.sciel-auth .signup-fields .field-password{order:5}.signup-screen .auth-switch{margin-top:20px;padding-top:17px}.signup-screen .auth-security{margin-top:16px}
@media(min-width:601px) and (max-height:760px){.auth-stage{padding:16px 20px 8px}.auth-card{padding:25px 32px 20px}.auth-brand-link{margin-bottom:20px}.auth-heading{margin-bottom:20px}.auth-switch{margin-top:21px;padding-top:18px}.auth-security{margin-top:16px}.auth-card.signup-screen{padding:21px 28px 18px}.signup-screen .auth-heading{margin-bottom:18px}.signup-screen .auth-brand-link{margin-bottom:16px}}
@media(max-width:600px){.auth-stage{padding:20px 14px 8px}.auth-card,.auth-card.signup-screen{padding:28px 24px 23px;border-radius:18px}.auth-brand-link{margin-bottom:24px}.auth-heading h1{font-size:25px}.signup-screen .auth-heading h1{font-size:22px}.preview-sidebar{display:none}.auth-preview{grid-template-columns:1fr;padding:0;min-width:900px}.auth-footer{font-size:10px}.signup-fields{gap:15px 12px}.sciel-auth .signup-fields .field-password{grid-column:1/-1}.sciel-auth .signup-fields .field-city{grid-column:1/-1}.signup-fields input{font-size:16px}.signup-screen .auth-brand-link .platform-brand>img{height:42px;width:26px}.signup-screen .auth-brand-link .platform-wordmark{font-size:28px}.signup-screen .auth-security{font-size:9px}}
@media(max-width:359px){.auth-card,.auth-card.signup-screen{padding-inline:18px}.signup-fields{grid-template-columns:1fr}.auth-footer{font-size:9px}}
@media(prefers-reduced-motion:reduce){.sciel-auth *{transition:none!important}}

.auth-card{position:relative}.auth-close{position:absolute;right:12px;top:12px;display:grid;place-items:center;width:36px;height:36px;padding:8px;border:0;border-radius:50%;background:#f3f4f7;color:#626776!important;z-index:1}.auth-close:hover{background:#e7e9f0}.auth-close svg{width:20px;height:20px}
.sciel-auth .password-field input{padding-right:45px}
.auth-recovery-link{text-align:right;font-size:12px;margin:14px 0 0}.sciel-auth .field small ul{padding-left:18px;margin:8px 0 0}
@media(max-width:600px){.sciel-auth .field input{font-size:16px}}
.auth-dialog{padding:0;border:0;background:transparent;width:min(540px,calc(100% - 28px));max-width:none;max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain;border-radius:22px;color:#171923}
.auth-dialog::backdrop{background:rgb(21 25 38 / 48%);backdrop-filter:blur(4px)}
.auth-dialog .auth-card{width:100%;max-width:none;box-shadow:none;border:0}.auth-dialog[open]{animation:auth-entrance .22s ease-out}
.auth-loading{display:flex;align-items:center;justify-content:space-between;gap:20px;background:white;padding:48px 28px;border-radius:20px;font:16px system-ui}
.auth-loading a{color:var(--action-bg,#27272a)}.auth-loading .auth-close{position:static;flex-shrink:0}.auth-network-error{margin:12px 0;color:#9f3a49;font-size:13px}
@keyframes auth-entrance{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.auth-dialog[open]{animation:none}}

/* Registration shares the authoritative city directory with CRM. */
.sciel-auth.signup-screen .field select{display:block;width:100%;height:44px;padding:10px 36px 10px 13px;border:1px solid #d9dce3;border-radius:7px;background-color:#fff;color:#20232c;font-size:14px;transition:border-color .18s;cursor:pointer}
.sciel-auth.signup-screen .field select:hover{border-color:#aeb3c1}
.sciel-auth.signup-screen .field select[aria-invalid=true]{border-color:#bf5964}
@media(max-width:600px){.sciel-auth.signup-screen .field select{font-size:16px}}
