import type { Snippet } from 'svelte'; import type { HTMLAttributes } from 'svelte/elements'; import type { SidebarSlots, SidebarVariants } from './sidebar.variants.js'; /** * @summary A side panel: permanent on desktop, an overlay on a phone. * @description Sidebar primitive — fixed-position panel that is permanent on * desktop (≥1024px) and slides in as a backdropped overlay on mobile. Use * this directly for right-side detail panels or custom shells. For the * standard "permanent left rail + mobile hamburger" application chrome, * prefer the higher-level `` component, which handles main * content offset and the mobile header for you. * * The component exposes `--sidebar-width` and `--sidebar-effective-width` * (0px when collapsed) as CSS variables on its `