div.grid-area {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(2, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    height: 100%;
}

div.grid-area > div { display: none; }

/* 1 screen */
div.grid-area[screens="1"] { grid-template-columns: 1fr; grid-template-rows: 1fr; }
div.grid-area[screens="1"] > #screen0 { grid-area: 1 / 1 / 2 / 2; display: block; }

/* 2 screens */
div.grid-area[screens="2"] { grid-template-columns: repeat(2, 1fr); grid-template-rows: repeat(1, 1fr); }
div.grid-area[screens="2"] > #screen0 { grid-area: 1 / 1 / 2 / 2; display: block; }
div.grid-area[screens="2"] > #screen1 { grid-area: 1 / 2 / 2 / 3; display: block; }

/* 3 screens */
div.grid-area[screens="3"] { grid-template-columns: repeat(2, 1fr); grid-template-rows: repeat(2, 1fr); }
div.grid-area[screens="3"] > #screen0 { grid-area: 1 / 1 / 3 / 2; display: block; }
div.grid-area[screens="3"] > #screen1 { grid-area: 1 / 2 / 2 / 3; display: block; }
div.grid-area[screens="3"] > #screen2 { grid-area: 2 / 2 / 3 / 3; display: block; }

/* 4 screens */
div.grid-area[screens="4"] { grid-template-columns: repeat(4, 1fr); grid-template-rows: repeat(2, 1fr); }
div.grid-area[screens="4"] > #screen0 { grid-area: 1 / 1 / 3 / 3; display: block; }
div.grid-area[screens="4"] > #screen1 { grid-area: 1 / 3 / 2 / 4; display: block; }
div.grid-area[screens="4"] > #screen2 { grid-area: 1 / 4 / 2 / 5; display: block; }
div.grid-area[screens="4"] > #screen3 { grid-area: 2 / 3 / 3 / 5; display: block; }

/* 5 screens */
div.grid-area[screens="5"] { grid-template-columns: repeat(4, 1fr); grid-template-rows: repeat(2, 1fr); }
div.grid-area[screens="5"] > #screen0 { grid-area: 1 / 1 / 3 / 3; display: block; }
div.grid-area[screens="5"] > #screen1 { grid-area: 1 / 3 / 2 / 4; display: block; }
div.grid-area[screens="5"] > #screen2 { grid-area: 1 / 4 / 2 / 5; display: block; }
div.grid-area[screens="5"] > #screen3 { grid-area: 2 / 3 / 3 / 4; display: block; }
div.grid-area[screens="5"] > #screen4 { grid-area: 2 / 4 / 3 / 5; display: block; }

/* 6 screens @default */
div.grid-area[screens="6"] { grid-template-columns: repeat(4, 1fr); grid-template-rows: repeat(3, 1fr); }
div.grid-area[screens="6"] > #screen0 { grid-area: 1 / 1 / 4 / 3; display: block; }
div.grid-area[screens="6"] > #screen1 { grid-area: 1 / 3 / 2 / 4; display: block; }
div.grid-area[screens="6"] > #screen2 { grid-area: 1 / 4 / 2 / 5; display: block; }
div.grid-area[screens="6"] > #screen3 { grid-area: 2 / 3 / 3 / 4; display: block; }
div.grid-area[screens="6"] > #screen4 { grid-area: 2 / 4 / 3 / 5; display: block; }
div.grid-area[screens="6"] > #screen5 { grid-area: 3 / 3 / 4 / 5; display: block; }

/* 7 screens */
div.grid-area[screens="7"] { grid-template-columns: repeat(4, 1fr); grid-template-rows: repeat(3, 1fr); }
div.grid-area[screens="7"] > #screen0 { grid-area: 1 / 1 / 4 / 3; display: block; }
div.grid-area[screens="7"] > #screen1 { grid-area: 1 / 3 / 2 / 4; display: block; }
div.grid-area[screens="7"] > #screen2 { grid-area: 1 / 4 / 2 / 5; display: block; }
div.grid-area[screens="7"] > #screen3 { grid-area: 2 / 3 / 3 / 4; display: block; }
div.grid-area[screens="7"] > #screen4 { grid-area: 2 / 4 / 3 / 5; display: block; }
div.grid-area[screens="7"] > #screen5 { grid-area: 3 / 3 / 4 / 4; display: block; }
div.grid-area[screens="7"] > #screen6 { grid-area: 3 / 4 / 4 / 5; display: block; }

/* Marker */
#screen0::after {
    content: ".";
    position: absolute;
    top: calc(50% - 8px);
    left: calc(50% - 8px);
    padding: 5px;
    font-size: 0px;
    width: 16px;
    height: 16px;
    border-radius: 16px;
    border: 3px solid #F44336;
    border-style: groove;
    pointer-events: none;
}