.fw {
    display: flex;
    flex-flow: row wrap;
    margin-bottom: 20em !important;
}

.fwlist {
    flex-grow: 1;
    padding-left: 0;
}
.fwlist li {
    list-style: none;
}
.fwlist input, .fwlist label {
    cursor: pointer;
}
.fwlist input {
    margin: 0.5em;
}
.fwlist h2 {
    margin: 0 1em 0.3em 1em;
}
.fwlist label {
    display: flex;
    flex-direction: row;
    margin: 0.5em;
    padding: 1em;
    border-radius: 10px;
    border: 1px solid var(--md-accent-fg-color);
    background: rgb(82 108 254 / 16%);
    transition: border 0.15s, background 0.15s;
    align-items: baseline;
}
.fwlist label:hover {
    background: rgb(82 108 254 / 22%);
    transition: background 0.15s;
}
.fwlist label:has(input:disabled) {
    background: rgb(82 108 254 / 10%);
    transition: background 0.15s;
    cursor: default;
}
.fwlist label:has(input:checked) {
    background: rgb(82 108 254 / 35%);
    transition: background 0.15s;
}
.fwlist label {
    flex-grow: 1;
}
.fwlist span {
    margin: 0 0.5em;
}
.fwupload {
    flex-grow: 1;
    display: flex;

}
.fwupload button {
    cursor: pointer;
    border-radius: 10px;
    border: 1px solid rgb(15 151 0);
    padding: 0.5em;
    margin: 0.5em !important;
    font-size: 1.2em;
    background: rgb(15 151 0 / 16%);
    transition: border 0.15s, background 0.15s;
}
.fwupload button:hover {
    background: rgb(15 151 0 / 22%);
    transition: background 0.15s;
}
.fwupload button:disabled {
    background: rgba(153, 153, 153, 0.22);
    border: 1px solid rgb(153, 153, 153);
    transition: background 0.15s;
    cursor: default;
}
.fwupload li {
    text-align: left;
}
#safariErr p {
     color:rgb(139, 0, 0);
     font-size: 1.7em;
}
#safariErr {
    border: 1px solid rgb(139, 0, 0);
    background: rgb(255 0 0 / 10%);
    margin: 2em 0 !important;
    border-radius: 10px;
}
#fwprogress {
    flex-grow: 1;
    height: 30px;
    width: 100%;
    margin: 0.5em !important;
    border-radius: 10px;
    border: 1px solid rgb(255, 153, 0);
    background: rgb(255 153 0 / 16%);
    position: relative;
    display: none;
}
#fwprogress .plunger {
    position: absolute;
    top: 0; bottom: 0; left: 0;
    width: 0;
    border-radius: 10px;
    border-right: 1px solid rgb(255, 153, 0);
    background: rgb(255 153 0 / 50%);
    box-sizing: content-box;
}
#fwprogress .label {
    position: absolute;
    top: 0.5em; bottom: 0.5em; left: 0; right: 0;
    text-align: center;
    font-size: 1.2em;
}
#start {
    flex-grow: 1;
}
#termconsole {
    padding: 1em;
    background: black;
}