.ecila-signup-form-wrapper, .ecila-login-wrapper {
    margin: 40px auto 0 auto;
    padding: 30px;
    background: #fff;
    border: 1px solid #eee;
    border-radius: 30px;
    -webkit-box-shadow: 0px 15px 20px -5px rgba(0, 0, 0, 0.3);
    box-shadow: 0px 15px 20px -5px rgba(0, 0, 0, 0.1);
}
.ecila-signup-form label {
	display: block;
	font-size: 14px;
	font-weight: 600;
	color: #00363a;
}
.ecila-login-wrapper label {
    margin-bottom: 10px;
}

.ecila-signup-form input[type="text"],
.ecila-signup-form input[type="email"],
.ecila-signup-form input[type="password"] {
	display: block;
	width: 100%;
	margin-top: 5px;
	border: 1px solid #d7d7d7;
	border-radius: 12px;
	font-size: 14px;
	box-sizing: border-box;
}

.ecila-slug-field {
	display: flex;
	align-items: center;
	gap: 6px;
}

.ecila-slug-field input {
	flex: 1;
}

.ecila-slug-domain {
	font-weight: 400;
	color: #777;
	white-space: nowrap;
}

.ecila-slug-feedback {
	display: block;
	margin-top: 6px;
	font-size: 12px;
	font-weight: 400;
}

.ecila-slug-feedback.available { color: #1c8a4b; }
.ecila-slug-feedback.unavailable { color: #c0392b; }

.ecila-signup-btn {
	display: inline-block;
	margin-top: 8px;
	padding: 12px 24px;
	background: #ff7a00;
	color: #fff;
	border: none;
	border-radius: 8px;
	font-weight: 600;
	font-size: 14px;
	cursor: pointer;
	text-decoration: none;
}

.ecila-signup-error {
	background: #fdecea;
	color: #c0392b;
	padding: 12px 16px;
	border-radius: 6px;
	margin-bottom: 16px;
	font-size: 14px;
}

.ecila-signup-success {
	text-align: center;
	padding: 24px;
}

/* Login centralizado */
.ecila-login-form-wrapper .ecila-login-lost-password {
	text-align: center;
	margin-top: 16px;
	font-size: 13px;
}

.ecila-login-form-wrapper .ecila-login-lost-password a {
	color: #777;
}

.ecila-login-picker {
	margin: 0 auto;
}

.ecila-login-picker h3 {
	color: #00363a;
	margin-bottom: 16px;
}

.ecila-login-picker-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.ecila-login-picker-item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px 16px;
	border: 1px solid #e0e0e0;
	border-radius: 8px;
	margin-bottom: 10px;
}

.ecila-login-picker-item strong {
	flex: 1;
	color: #222;
}

.ecila-login-picker-item .ecila-signup-btn {
	margin-top: 0;
	padding: 8px 16px;
	font-size: 13px;
}

.ecila-product-badge {
	padding: 3px 10px;
	border-radius: 4px;
	font-size: 11px;
	font-weight: 700;
	background: #eee;
	color: #333;
	white-space: nowrap;
}

.ecila-product-catalogo { background: #e7f0ff; color: #0b4a9c; }
.ecila-product-agenda { background: #fff1e0; color: #99500a; }

.ecila-signup-step { display: none; }
.ecila-signup-step.is-ativo { display: block; }

.ecila-signup-steps-indicator { display: flex; justify-content: space-between; margin-bottom: 24px; gap: 8px; }
.ecila-step-dot {
  flex: 1; text-align: center; font-size: 12px; font-weight: 700;
  color: #b7bec2; position: relative; padding-bottom: 6px;
  border-bottom: 3px solid #e5e7e6;
}
.ecila-step-dot em { display: block; font-style: normal; font-weight: 500; font-size: 11px; margin-top: 4px; color: #9aa0a3; }
.ecila-step-dot.is-ativo { color: #F2660B; border-color: #F2660B; }
.ecila-step-dot.is-concluido { color: #00b368; border-color: #00b368; }

.ecila-signup-nav { display: flex; justify-content: space-between; gap: 12px; margin-top: 20px; }
.ecila-signup-btn-secundario {
  background: transparent; border: 1px solid #d6dadb; color: #444;
  padding: 10px 20px; border-radius: 8px; font-weight: 600; cursor: pointer;
}

.ecila-signup-step select {margin-bottom: 6px;}
.ecila-field-error { display:block; color:#d63638; font-size:12px; margin-top:4px; min-height:14px; }
.ecila-field-hint { display:block; color:#8a8f98; font-size:12px; margin-top:2px; }
.ecila-slug-feedback.is-ok { color:#1c8a4b; }
.ecila-slug-feedback.is-erro { color:#d63638; }
.ecila-signup-terms { display:flex; align-items:flex-start; gap:8px; font-size:13px; margin-top: 20px;}
.ecila-signup-terms input { margin-top:3px; }
.ecila-recaptcha-disclosure {
    font-size: 11px;
    color: #8a8f98;
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid #eee;
    text-align: center;
}

.ecila-login-info {
  background: #e9f7ef;
  color: #1c8a4b;
  padding: 12px 16px;
  border-radius: 6px;
  margin-bottom: 16px;
  font-size: 14px;
}
.ecila-login-forgot-intro { font-size: 13px; color: #666; margin-bottom: 12px; }
.ecila-signup-form label,
.ecila-login-form label {
	display: block;
	font-size: 14px;
	font-weight: 600;
	color: #00363a;
}

.ecila-signup-form input[type="text"],
.ecila-signup-form input[type="email"],
.ecila-signup-form input[type="password"],
.ecila-login-form input[type="text"],
.ecila-login-form input[type="email"],
.ecila-login-form input[type="password"] {
	display: block;
	width: 100%;
	margin-top: 5px;
	border: 1px solid #d7d7d7;
	border-radius: 12px;
	font-size: 14px;
	box-sizing: border-box;
}