:host {
  writing-mode: vertical-lr;
  border-right: 1px solid blue;
  height: 100%;
} 

:host svg {
  display: block;
}

:host span.outside { font-size: 0%; line-height: 0%; border-left: 1px solid blue; vertical-align: top; }
:host span.middle { vertical-align: bottom; }
:host span.inside { border-left: 1px dashed red; }


fsw-sign, fsw-symbol { 
  writing-mode: horizontal-tb; 
  display: inline-block; 
  vertical-align: middle; 
  box-sizing: content-box; 
}

/* A near-zero transition makes the browser emit `transitionend` whenever
   the computed color changes (theme switch, parent restyle, media query),
   which re-renders the SVG with the new colors. */
:host {
  transition: color 1ms, background-color 1ms;
}
