{{-- A section that opens to show more: an FAQ answer, advanced settings. Not an M3 component; built on the native `
` so it opens without script, keeps its state through a Livewire morph (`wire:ignore.self` stops the server's HTML from closing it), and is announced as a disclosure. Drawn in M3's terms: a title-medium `title` (or a `heading` slot), an optional leading `icon`, a chevron that turns over on the spatial spring, and — where the browser supports animating `details` content (`interpolate-size`) — a height that eases open. `open` starts it open. `variant`: `plain` (the default, on the surface around it) or `filled` (a surface-container tile with a large corner). --}} @props([ 'title' => null, 'icon' => null, 'open' => false, 'variant' => 'plain', ])
class([ 'group/collapse [interpolate-size:allow-keywords]', 'rounded-corner-lg bg-surface-container' => $variant === 'filled', ]) }} > $variant === 'filled', ])> @if ($icon) @endif {{ $heading ?? $title }}
$variant === 'filled', 'pt-1'])> {{ $slot }}