@layer components{.separator{--_line:var(--border);--_thick:1px;--_gap:.75rem;background:var(--_line);height:var(--_thick);border:none;flex-shrink:0;width:100%;margin:0;&[data-orientation=vertical]{height:auto;width:var(--_thick);align-self:stretch}&:not(:empty){align-items:center;gap:var(--_gap);letter-spacing:.02em;height:auto;color:var(--muted-foreground);white-space:nowrap;background:0 0;font-size:.75rem;font-weight:500;line-height:1.25rem;display:flex;&:before,&:after{content:"";height:var(--_thick);background:var(--_line);flex:1 1 0}&[data-align=start]:before,&[data-align=end]:after{display:none}&[data-line=none]{justify-content:center;&:before,&:after{display:none}}&[data-orientation=vertical]{flex-direction:column;align-self:stretch;width:auto;&:before,&:after{width:var(--_thick);height:auto;min-height:.5rem}}}&[data-variant=neutral]{--_line:var(--foreground)}&[data-variant=primary]{--_line:var(--primary)}&[data-variant=secondary]{--_line:var(--chart-2)}&[data-variant=accent]{--_line:var(--chart-4)}&[data-variant=destructive],&[data-variant=error]{--_line:var(--destructive)}&[data-variant=success]{--_line:#16a34a}&[data-variant=warning]{--_line:#f59e0b}&[data-variant=info]{--_line:#0ea5e9}&[data-size=sm]{--_thick:1px}&[data-size=md]{--_thick:2px}&[data-size=lg]{--_thick:4px}&[data-size=xl]{--_thick:8px}&[data-gap=none]{--_gap:0}&[data-gap=sm]{--_gap:.375rem}&[data-gap=md]{--_gap:.75rem}&[data-gap=lg]{--_gap:1.5rem}&[data-gap=xl]{--_gap:2.5rem}@media (width>=48rem){&[data-orientation-md=vertical]{height:auto;width:var(--_thick);align-self:stretch;&:not(:empty){flex-direction:column;width:auto;&:before,&:after{width:var(--_thick);height:auto;min-height:.5rem}}}}@media (width>=64rem){&[data-orientation-lg=vertical]{height:auto;width:var(--_thick);align-self:stretch;&:not(:empty){flex-direction:column;width:auto;&:before,&:after{width:var(--_thick);height:auto;min-height:.5rem}}}}}.separator-label{align-items:center;gap:.75rem;display:flex;& .separator{flex:1}& span{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;flex-shrink:0;font-size:.75rem;font-weight:500}}@media (forced-colors:active){.separator{forced-color-adjust:none;--_line:CanvasText;color:canvastext}}@media (prefers-contrast:more){.separator:not([data-variant]){--_line:var(--foreground)}.separator:not([data-size]){--_thick:2px}}}