* {
    box-sizing: border-box;
}

table {
    width: 100%;
}

button {
    border-radius: 8px;
    border: none;
    width: 120px;
    min-height: 35px;
    margin: 5px;
}

input[type=text],
input[type=password] {
    border-radius: 4px;
    border: none;
    width: 100%;
    min-width: 150px;
    height: 35px;
    margin: 5px;
}

.progress_background {
    width: 100%;
    border-radius: 4px;
}

.progress_bar {
    width: 1%;
    height: 10px;
    border-radius: 4px;
}

.component {
    padding: 20px;
    float: left;
    width: 100%;
}

.component-image {
    padding: 20px;
    float: left;
    width: 100%;
}

td.right {
    text-align: right;
}

img {
    display: block;
    max-width: 100%;
    min-width: 75px;
    height: auto;
    margin-left: auto;
    margin-right: auto;
}

td {
    padding: 10px;
}

progress {
    width: 100%;
}



.text_h1 {
    font-size:2em;
}
.topnav a {
    font-size:1.4em;
}
.text_normal {
    font-size:1.2em;
}

/* Use a media query to add a break point at 800px: */
@media screen and (min-width:1040px) {
    .component {
        width: 50%;
        /* The width is 100%, when the viewport is 800px or smaller */
    }
    .text_h1 {
        font-size:3.3em;
    }
    .topnav a {
        font-size:2.3em;
    }
    .text_normal {
        font-size:1.8em;
    }
    button {
        width: auto;
        max-width: 200px;
        min-width: 160px; 
    }
    input[type=text],
    input[type=password] {
        height: 35px;
    }
}

/* Use a media query to add a break point at 1200px: */
@media screen and (min-width:1921px) {
    .component {
        width: 33.33%;
        /* The width is 100%, when the viewport is 800px or smaller */
    }
    .text_h1 {
        font-size:3.3em;
    }
    .topnav a {
        font-size:2.3em;
    }
    .text_normal {
        font-size:2.0em;
    }
    button {
        height: 40px;
        width: auto;
        max-width: 200px;
        min-width: 160px; 
    }
}




/* Add a black background color to the top navigation */
.topnav {
    width: 100%;
    overflow: hidden;
}

/* Style the links inside the navigation bar */
.topnav a {
    float: left;
    text-align: center;
    padding: 14px 16px;
    text-decoration: none;
}