body {
    font-family: sans-serif;
    background-color: #eee;
}

#Form,
#Submit {
    display: none;
}

body.submit #Submit {
    display: block;
}

body.form #Form {
    display: block;
}


section {
    margin: 5px;
    padding: 5px;
}

article {
    padding: 10px;
}

.under-fieldset {
    background-color: #fff;
    padding: 6px 20px;
    margin: 0 3px;
    border: 1px solid #ccc;
}

.under-fieldset > * {
    margin: 0;
    padding: 0;
}

ul.clip-fetcher {
    overflow: hidden;
}

ul.clip-fetcher li {
    float: left;
    list-style: none;
    font-size: 0.8em;
    margin-right: 40px;
}

ul.clip-fetcher a {
    color: #eb1c2d;
    text-decoration: none;
    cursor: pointer;
}

ul.clip-fetcher a:hover {
    text-decoration: underline;
}

fieldset,
article {
    position: relative;
    margin-top: 20px;
    background-color: #fff;
    border: none;
    box-shadow: #ccc 2px 2px 2px;
    border-top: 1px solid #ddd;
    border-left: 1px solid #ddd;
}

fieldset legend {
    position: relative;
    background-color: #fff;
    padding: 5px 20px;
    border-top: 1px solid #ddd;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
}

fieldset legend:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: -1px;
    height: 50%;
    border-left: 1px solid #fff;
}

fieldset legend:after {
    content: '';
    position: absolute;
    bottom: 0;
    right: -1px;
    height: 50%;
    border-left: 1px solid #fff;
}

fieldset label {
    display: inline-block;
    vertical-align: top;
}

fieldset label > span {
    float: left;
    min-width: 125px;
    padding-right: 5px;
}

fieldset div {
    margin: 7px 0;
    width: 100%;
}

fieldset input {
    float: left;
}

input + .require-selection {
    display: none;
}

input:checked + .require-selection {
    display: block;
    padding-left: 20px;
}

input:checked + .require-selection > label {
    margin-right: 0;
}

input[type="text"] + .description {
    margin-left: 0;
}

fieldset .description {
    float: left;
    clear: both;
    font-size: .7em;
    margin-top: 2px;
    margin-left: 20px;
}

div.radio-buttons {
    margin-bottom: 35px;
}
div.radio-buttons p {
    display: inline-block;
    min-width: 125px;
    margin: 0;
}

.radio-buttons label {
    clear: both;
    overflow: hidden;
    display: block;
    margin: 10px;
}

div.radio-buttons .require-selection > span,
div.radio-buttons .require-selection > label,
div.radio-buttons .require-selection > input {
    float: none;
    margin: 0;
}

code {
    border: 1px solid #000;
    background-color: #FFF;
    padding: 10px;
    display: block;
}

button {
    margin-top: 20px;
}

button.close-button {
    margin-top: 0;
}

button.beta {
    margin-top: 0;
    border: 1px solid grey;
}
button.beta.active {
    border: 2px solid red;
}

button.inline {
    border: 1px solid grey;
    margin-top: 0;
    margin-left: 10px;
}

fieldset div.cbc-caffeine-player,
fieldset div.cbc-caffeine-player div {
    margin: 0;
}