Bloque de altura 100% con texto vertical.

Tengo un bloque de altura variable en el que quiero colocar otro bloque con 100% de altura y texto vertical (dirección de abajo hacia arriba) y apilarlo al lado izquierdo del bloque exterior. ¿Hay alguna forma de lograrlo con transformaciones CSS pero sin cálculos de ancho y alto en JS?

Esto es lo que podría llegar hasta aquí:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<style type="text/css">
.block1 {
    border: 4px solid #888;
    height: 120px;
    width: 200px;
}
.block2 {
    height: 100%;
    border: 4px solid red;
}
.msg {
    display: inline-block;
    white-space: nowrap;
    font-family: Verdana;
    font-size: 14pt;
    -moz-transform: rotate(-90deg);
    -moz-transform-origin: center center;
    -webkit-transform: rotate(-90deg);
    -webkit-transform-origin: center center;
    -ms-transform: rotate(-90deg);
    -ms-transform-origin: center center;
}
</style>
</head>
<body>
    <div class="block1">
        <table class="block2">
        <tr>
            <td>
                <div class="msg">Hi there!</div>
            </td>
        </tr>
        </table>
    </div>
</body>
</html>

Puede ver que el ancho computado del bloque interno es el mismo que el ancho del texto antes de la rotación.

ACTUALIZAR:

Aquí está la foto de lo que quiero obtener al final:

Es una franja horizontal con elementos apilados a su lado izquierdo y con un bloque de encabezado vertical. La altura de la raya es variable, por lo que los elementos deben adaptarse y el texto del encabezado debe permanecer centrado.

Respuestas a la pregunta(4)

Su respuesta a la pregunta