:root {
    --base-fontsize: 1rem;
    --line-height: 1.4;
}

.float-window {
    width: 300px;
    height: 500px;
    position: relative;
    top: calc(50% - 250px);
    left: calc(50% - 150px);
}

body {
    max-width: 100%;
    padding: 0;
}

main.content {
    padding: .75rem 1rem;
}

/* override simple.css (compact defaults) */
h1, h2, h3, h4, h5, h6 {
    margin: .75rem 0 .5rem;
}

header {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    padding: .5rem 1rem;
    text-align: left;
    background: none;
}
header .header-left {
    display: flex;
    align-items: baseline;
    gap: .75rem;
}
header .page-title {
    font-size: 1rem;
    font-weight: 700;
    color: black;
    white-space: nowrap;
}

header .logo .icon {
    color: black;
    display: inline-block;
    margin-left: .5rem;
    vertical-align: middle;
}
header .logo .bar {
    color: #00bfff;
}
header .logo .text {
    color: black;
    display: inline-block;
    text-decoration: none;
    font-size: 1.25rem;
    font-weight: 700;
    margin-left: .5rem;
    vertical-align: middle;
}

footer {
    margin-top: 1.5rem;
    padding: 1rem;
}

p.message,
p.error {
    padding: .5rem 1rem;
    font-size: 1rem;
    border-radius: 5px;
}
p.error {
    background-color: lightpink;
    color: darkred;
}
p.message {
    background-color: lightgreen;
    color: darkgreen;
}
header .user {
    line-height: 1.4;
}

textarea,
select,
input {
    padding: .35rem .5rem;
    margin: .25rem 0;
}
form textarea,
form select,
form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="reset"]):not([type="button"]) {
    width: 100%;
}

table {
    margin: .75rem 0;
}

th, td {
    padding: 3px;
}
td input:not([type="checkbox"]):not([type="radio"]) {
    margin: 0;
    width: 100%;
}
td input[type="checkbox"],
td input[type="radio"] {
    margin: 0;
    width: auto;
}
td select {
    margin: 0;
    width: 100%;
}
input[ref="newins"],
input[ref="ins"] {
    width: calc(100% - 30px)
}
table button {
    padding: .25rem .5rem;
    margin: 0;
}
button.icon-button {
    padding: .25rem .4rem;
    line-height: 1;
    min-width: 2rem;
}
button.details-toggle {
    padding: .2rem .4rem;
    margin-right: .3rem;
}
tr.details-row td {
    background: rgba(0, 0, 0, 0.03);
}
table.monitors-table th,
table.monitors-table td {
    padding: 2px 4px;
}
form.finish,
form.login {
    max-width: 50ch;
}
p {
    margin: .35em 0;
}
@media screen and (max-width: 720px) {
    table td.name,
    table th.name {
        display: none;
    }
}
@media screen and (max-width: 480px) {
    table td.cases,
    table th.cases,
    table td.note,
    table th.note {
        display: none;
    }
}
input[type="checkbox"]:focus,
input[type="checkbox"]:enabled:hover {
    border-color: black;
}
