.msai-auth-widget {
	--msai-auth-card-bg: #ffffff;
	--msai-auth-card-border: #e6eaf2;
	--msai-auth-card-radius: 26px;
	--msai-auth-text: #0b1220;
	--msai-auth-title: #07162f;
	--msai-auth-subtitle: #526070;
	--msai-auth-kicker: #123d9d;
	--msai-auth-tab-bg: #ffffff;
	--msai-auth-tab-text: #123d9d;
	--msai-auth-tab-active-bg: #123d9d;
	--msai-auth-tab-active-text: #ffffff;
	--msai-auth-tab-border: #d7dfee;
	--msai-auth-tab-radius: 16px;
	--msai-auth-label: #0b1220;
	--msai-auth-input-bg: #ffffff;
	--msai-auth-input-text: #0b1220;
	--msai-auth-input-border: #cbd5e1;
	--msai-auth-input-focus-border: #123d9d;
	--msai-auth-input-radius: 12px;
	--msai-auth-button-bg: #123d9d;
	--msai-auth-button-text: #ffffff;
	--msai-auth-button-hover-bg: #0f2f76;
	--msai-auth-button-hover-text: #ffffff;
	--msai-auth-button-border: #123d9d;
	--msai-auth-button-radius: 12px;
	--msai-auth-success: #0f8b52;
	--msai-auth-error: #b42318;
	display: flex;
	width: 100%;
	max-width: 100%;
	min-width: 0;
}

.msai-auth-widget,
.msai-auth-widget * {
	box-sizing: border-box;
}

.msai-auth-widget__shell {
	display: flex;
	width: 100%;
	min-width: 0;
}

.msai-auth-widget--align-left {
	justify-content: flex-start;
}

.msai-auth-widget--align-center {
	justify-content: center;
}

.msai-auth-widget--align-right {
	justify-content: flex-end;
}

.msai-auth-widget__card {
	display: block !important;
	width: min(100%, 520px);
	max-width: 520px;
	min-width: 0;
	padding: 32px;
	border: 1px solid var(--msai-auth-card-border);
	border-radius: var(--msai-auth-card-radius);
	background: var(--msai-auth-card-bg);
	color: var(--msai-auth-text);
	box-shadow: 0 22px 48px rgba(18, 38, 63, 0.12);
	overflow: hidden;
}

.msai-auth-widget__header,
.msai-auth-widget__body {
	display: grid;
	width: 100%;
	min-width: 0;
}

.msai-auth-widget__eyebrow {
	margin: 0 0 10px;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--msai-auth-kicker);
}

.msai-auth-widget__title {
	margin: 0;
	font-size: 32px;
	line-height: 1.08;
	color: var(--msai-auth-title);
}

.msai-auth-widget__subtitle {
	margin: 12px 0 0;
	font-size: 15px;
	line-height: 1.6;
	color: var(--msai-auth-subtitle);
}

.msai-auth-widget__notice {
	margin: 18px 0 0;
	padding: 12px 14px;
	border-radius: 16px;
	background: #f4f8fd;
	font-size: 14px;
	line-height: 1.5;
}

.msai-auth-widget__notice.is-success {
	color: var(--msai-auth-success);
	background: #ecfdf3;
}

.msai-auth-widget__notice.is-error {
	color: var(--msai-auth-error);
	background: #fef3f2;
}

.msai-auth-widget__tabs {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
	margin-top: 22px;
	padding: 6px;
	border: 1px solid var(--msai-auth-tab-border);
	border-radius: calc(var(--msai-auth-tab-radius) + 4px);
	background: var(--msai-auth-tab-bg);
}

.msai-auth-widget__tab {
	padding: 12px 14px;
	border: 1px solid var(--msai-auth-tab-border);
	border-radius: var(--msai-auth-tab-radius);
	background: var(--msai-auth-tab-bg);
	color: var(--msai-auth-tab-text);
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
}

.msai-auth-widget__tab.is-active {
	border-color: var(--msai-auth-tab-active-bg);
	background: var(--msai-auth-tab-active-bg);
	color: var(--msai-auth-tab-active-text);
	box-shadow: 0 10px 22px rgba(18, 38, 63, 0.08);
}

.msai-auth-widget__body {
	margin-top: 22px;
}

.msai-auth-widget__form[hidden] {
	display: none !important;
}

.msai-auth-widget__form {
	display: grid !important;
	gap: 16px;
	margin: 0;
	width: 100%;
}

.msai-auth-widget__field {
	display: grid;
	gap: 8px;
}

.msai-auth-widget__label {
	font-size: 14px;
	font-weight: 700;
	color: var(--msai-auth-label);
}

.msai-auth-widget__input {
	display: block;
	width: 100%;
	max-width: 100%;
	min-height: 52px;
	padding: 14px 16px;
	border: 1px solid var(--msai-auth-input-border);
	border-radius: var(--msai-auth-input-radius);
	background: var(--msai-auth-input-bg);
	color: var(--msai-auth-input-text);
	font-size: 15px;
	box-sizing: border-box;
}

.msai-auth-widget__input:focus {
	outline: none;
	border-color: var(--msai-auth-input-focus-border);
	box-shadow: 0 0 0 3px rgba(18, 61, 157, 0.14);
}

.msai-auth-widget__check {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-size: 14px;
	line-height: 1.55;
	color: var(--msai-auth-text);
}

.msai-auth-widget__check input[type="checkbox"] {
	margin-top: 3px;
}

.msai-auth-widget__check a {
	color: var(--msai-auth-kicker);
	text-decoration: underline;
}

.msai-auth-widget__submit {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 52px;
	padding: 14px 18px;
	border: 1px solid var(--msai-auth-button-border);
	border-radius: var(--msai-auth-button-radius);
	background: var(--msai-auth-button-bg);
	color: var(--msai-auth-button-text) !important;
	font-size: 15px;
	font-weight: 800;
	cursor: pointer;
}

.msai-auth-widget__submit:hover,
.msai-auth-widget__submit:focus-visible {
	border-color: var(--msai-auth-button-hover-bg);
	background: var(--msai-auth-button-hover-bg);
	color: var(--msai-auth-button-hover-text) !important;
}

.msai-auth-widget__submit[disabled] {
	opacity: 0.7;
	cursor: wait;
}

.msai-auth-widget__text-link {
	display: inline-flex;
	align-items: center;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--msai-auth-kicker);
	font-size: 14px;
	font-weight: 700;
	text-align: left;
	cursor: pointer;
}

.msai-auth-widget__editor-note {
	padding: 14px 16px;
	border: 1px dashed #c5d7ea;
	border-radius: 16px;
	background: #f8fbff;
	color: #4a6078;
	font-size: 14px;
}

.msai-auth-widget button,
.msai-auth-widget input,
.msai-auth-widget textarea,
.msai-auth-widget select {
	font: inherit;
	max-width: 100%;
	min-width: 0;
}

@media (max-width: 767px) {
	.msai-auth-widget__card {
		padding: 24px;
	}

	.msai-auth-widget__title {
		font-size: 26px;
	}
}
