/* Reset */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
ol, ul {list-style: none;}
blockquote, q {quotes: none;}
blockquote:before, blockquote:after, q:before, q:after {content: ''; content: none;}
table {border-collapse: collapse; border-spacing: 0;}

/* Layout */
html {box-sizing: border-box;}
*, *:before, *:after {box-sizing: inherit;}
body {font-family: 'Lato', sans-serif; font-size: 1em; line-height: 150%;}
#bg {position: fixed; top: -50%; left: -50%; width: 200%; height: 200%; z-index: -1;}
#bg img {position: absolute; top: 0; left: 0; right: 0; bottom: 0; margin: auto; min-width: 50%; min-height: 50%;}
main {width: 100%; max-width: 800px; margin: 0 auto;}

/* Commons */
h1, h2, h3, h4 {font-weight: bold; line-height: 120%;}
h1 {font-size: 2em;}
h2 {font-size: 1.5em;}
article {margin: 1em;}
.numero {text-align: right;}
.opcion {white-space: nowrap;}
.aviso {margin: 1em; line-height: 120%; font-style: italic;}
strong {font-weight: bold;}

/* Header */
header {width: 100%; max-width: 800px; margin: 1em auto; text-align: center;}

/* Form */
form {padding: 1em; text-align: center; background-color: rgba(255, 255, 255, 0.5);}
form fieldset {text-align: left; display: table;}
form fieldset p {display: table-row;}
label {display: table-cell; width: 200px; text-align: right; line-height: 110%;}
input {display: table-cell; padding: 5px; margin: 3px 0 2px 5px; border-radius: 5px;}
input:required {border: 2px solid red;}
input[type="radio"] {margin: 0 2px 0 1em;}
input[type="number"] {width: 60px; text-align: right;}
input[type="submit"] {margin: 10px; padding: 10px; text-align: center; text-transform: uppercase; border-radius: 10px; cursor: pointer;}
input[type="submit"]:hover {background-color: red;}
#boton {margin: 1em; line-height: 135%;}

/* Bases */
#bases {margin: 1em;}
#bases ol {padding: 1em; font-size: 0.8em; list-style-type: decimal; border: 1px solid black;}
#bases ol li {margin-left: 1em;}
#bases p {text-align: center;}