# Migrating to Azumi v43+

## What Changed

The `inline_css!()` and `inline_script!()` macros were **removed**. They were thin wrappers that have been replaced by built-in auto-escaping in the `html!` macro.

## Migration Steps

Replace macro invocations with bare `<style>` and `<script>` tags:

```diff
- html! { {inline_css!(THEME_CSS)} }
+ html! { <style>{THEME_CSS}</style> }

- html! { {inline_script!(TRACKING_JS)} }
+ html! { <script>{TRACKING_JS}</script> }
```

No other changes needed. The `<style>{var}</style>` and `<script>{var}</script>` patterns:
- Auto-escape `</style>` and `</script>` sequences (case-insensitive)
- Are enforced by the same compile-time validators as all other html! elements
- Follow Script → Content → Style node ordering rules

`json_data!("VAR" = &data)` stays unchanged. It does real work (serde + variable naming) and is not affected.
