body{margin:40px auto;
     max-width:650px;
     line-height:1.6;
     font-size:25px;
     color:#444;
     padding:0 10px;
     /*font-family: "Trebuchet MS", Arial, Helvetica, sans-serif;*/
    }
h1,h2,h3{line-height:1.2}
input[type=text], select {
    width: 100%;
    padding: 12px 20px;
    margin: 8px 0;
    display: inline-block;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box;
    font-size: 16px;
}

button {
    width: 100%;
    background-color: #4CAF50;
    color: white;
    padding: 14px 20px;
    margin: 8px 0;
    border: none;
    border-radius: 4px;
    cursor: pointer;
}

button:hover {
    background-color: #45a049;
}

button.deactivate {
    background-color: firebrick;
}

button.deactivate:hover {
    background-color: darkred;
}

button.option {
    background-color: dodgerblue;
}

button.option:hover {
    background-color: cornflowerblue;
}

button.csv {
    background-color: forestgreen;
}

button.csv:hover {
    background-color: darkgreen;
}

ul.messages {
    padding: 0;
    list-style: none;
}

ul.messages li {
    margin-bottom: 5px;
    padding: 13px;
    font-size: 15px;
}

.notice, .success {
    color: #3b3b3b;
    border: 0.5px solid black;
    background: #d3d1d1;
    border-radius: 4px;
}

.error {
    border: 0.5px solid red;
    color: #a40000;
    background: #fbb;
    border-radius: 4px;
}

a {
    color: deepskyblue;
}

input[type=submit]:hover {
    background-color: #45a049;
}

#grouptable {
    /*font-family: "Trebuchet MS", Arial, Helvetica, sans-serif;*/
    border-collapse: collapse;
    width: 100%;
    /*display: inline-block;
          vertical-align: top;*/
}

#grouptable td, #grouptable th {
    border: 1px solid #ddd;
    padding: 8px;
}

#grouptable tr:nth-child(even){background-color: #f2f2f2;}

#grouptable tr:hover {background-color: #ddd;}

#grouptable th {
    padding-top: 12px;
    padding-bottom: 12px;
    text-align: left;
    background-color: #4CAF50;
    color: white;
}


.center-container {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.loader {
    border: 16px solid #f3f3f3; /* Light grey */
    border-top: 16px solid #3498db; /* Blue */
    border-radius: 50%;
    width: 120px;
    height: 120px;
    animation: spin 2s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

input[type=number]{
    width: 50px;
    font-size: 20px;
}

input[type=number].float{
    width: 60px;
}
