*, *:before, *:after {
   box-sizing: border-box;
}

html {
    height: 100%;
}

body {
    width: 100%;
    height: inherit;
}

.note-hints {
    overflow-y: hidden;
    display: inline-flex;
    height: 100vh;
    width: 100%;
}

.help {
    padding: 1rem;
}

.hide-help > .help {
    display: none;
}

.note-hint {
    user-select: none;

    box-sizing: border-box;
    background: #803636;
    height: 100%;
    display: inline-block;
    border: 1px solid white;
    border-style: inset;

    font-size: xx-large;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;

    text-shadow: 3px 3px 3px gray;
}

.note-hint.note-root {
    background: black;
}

.note-hint.note-active {
   opacity: 0.9;
}

.line {
   pointer-events: none;
}

.line-horizontal {
    position: absolute;
    width: 100vw;
    height: 2px;
    border: 1px solid black;
    top: 100px;
}

.line-vertical {
    position: absolute;
    width: 1px;
    height: 100vh;
    border: 1px solid black;
    top: 0;
    left: 100px;
}
