/*--- Global settings ----*/
body {
    margin: 0;
    font-family: Arial,Helvetica;
    font-size: 12pt;
}

a:link {
    text-decoration: none;
}
a:hover {
    color: #FF0;
}

a.link:link, a.link:visited {
    color: blue;
    text-decoration: underline;
}

button:hover {
    cursor: pointer;
}
button:focus {
    outline: none;
}

h2 {
    color: #050;
    margin: 8px;
    text-align: center;
}

label {
    white-space: nowrap;
    font-weight: bold;
    color: #050;
}

input {
    border: 1px solid grey;
    border-radius: 6px;
    padding: 2px 4px;
    font-size: 1em;
    background: #F8F8F8;
}

input[type=radio] {
    margin: 0 6px;
}

input[type=number] {
    text-align: right;
}

table th {
    white-space: nowrap;
}

select {
    border: 1px solid grey;
    border-radius: 6px;
    padding: 2px 4px;
    font-size: 1em;
    background: #F8F8F8;
}

::placeholder {
    color: #AAA;
}

/*--- Main header ---*/
#main-header {
    z-index: 2;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 80px;
    margin: 0;
    padding: 0 8px;
    background: linear-gradient(to right,#FD7,#FB0);
}
.main-headerbut {
    display: inline-block;
    //vertical-align: top;
    margin: 32px 0;
    font-size: 1.1em;
    text-align: right;
    border: 1px solid red;
}

/*--- Main menubar ---*/
#main-menubar {
    z-index: 3;
    position: fixed;
    top: 80px;
    width: 100%;
    border-bottom: 1px solid #A00;
    text-align: center;
    white-space: nowrap;
    background: black;
}
#main-menubar a {
    display: inline-block;
    width: 10%;
    padding: 8px;
    color: #FD7;
}
#main-menubar a:hover {
    background: #555;
}
#main-menubar a#active {
    background: #CCC;
    color: black;
    font-weight: bold;
}

/*--- Main body ---*/
#main-body {
    overflow: auto;
    position: relative;
    margin: 112px auto 0 auto;
    width: 100%;
    text-align: center;
    color: black;
}

/*--- Login popup ---*/
#login-popup {
    z-index: 4;
    position: fixed;
    top: 32px;
    left: 50%;
    transform: translateX(-50%);
    border: 4px solid #050;
    border-radius: 8px;
    width: 400px;
    padding: 16px;
    text-align: center;
    background: #FD7;
}
#login-popup input {
    margin: 2px 32px;
    width: 80%;
    border-radius: 8px;
    padding: 4px;
    font-size: 1em;
    text-align: center;
}
#login-popup .login-not {
    border: 0;
    font-weight: bold;
    text-decoration: underline;
    color: #050;
}
#login-popup .prompt {
    padding-top: 12px;
    font-size: 1.1em;
    font-weight: bold;
    color: #050;
}

/*--- Member menu drop down ---*/
#user-menu {
    position: fixed;
    top: 28px;
    right: 16px;
    text-align: right;
}
.user-button {
    border: 1px solid #88F;
    border-radius: 4px;
    padding: 1px 8px;
    font-size: 1em;
    background: linear-gradient(#8AF,#058);
    color: white;
}
.user-select {
    position: fixed;
    top: 28px;
    right: 16px;
    text-align: right;
    border-radius: 4px;
    padding: 6px 16px;
    font-size: 1em;
    background: linear-gradient(#8AF,#058);
    color: white;
    display: none;
}
#user-menu:hover .user-select {
    display: block;
}
.user-select:hover {
    background: black;
}

#user-timer {
    position: fixed;
    top: 8px;
    right: 16px;
    text-align: right;
    color: #A50;
}

/*--- Various Buttons ---*/
.main-button {
    border: 0;
    border-radius: 16px;
    padding: 8px 20px;
    font-size: 1.1em;
    color: white;
}
.slim-button {
    border: 0;
    border-radius: 16px;
    padding: 6px 12px;
    font-size: 1em;
    color: white;
}
.sort-button {
    width: 100%;
    border: 0;
    padding: 0 2px;
    color: #050;
    background: none;
    font-size: 1em;
    font-weight: bold;
    text-align: center;
}
.sort-button:hover {
    color: #080;
}
.limit-button {
    border: 0;
    padding: 0 2px;
    font-size: 1em;
    background: none;
    color: white;
}
.goto-button {
    border: 0;
    border-radius: 8px;
    padding: 1px 6px;
    font-size: 1em;
}

.red {
    background: linear-gradient(#F88,#F22);
}
.red:hover {
    background: linear-gradient(#F88,#C00);
}
.green {
    background: linear-gradient(#4D4,#272);
}
.green:hover {
    background: linear-gradient(#4D4,#242);
}
.blue {
    background: linear-gradient(#8BF,#05F);
}
.blue:hover {
    background: linear-gradient(#8BF,#02F);
}

/*--- Footer section ---*/
#footer-table {
    border-collapse: collapse;
    width: 100%;
    text-align: center;
    background: #222;
    color: #A86;
}
#footer-table th {
    width: 33.3%;
    padding-top: 16px;
    text-align: center;
    font-size: 1.2em;
    font-weight: normal;
}
#footer-table td {
    width: 33.3%;
    padding: 8px;
    vertical-align: top;
    text-align: center;
    line-height: 2.0em;
}

a.footer-link:link, a.footer-link:visited {
    color: #CCC;
}
a.footer-link:hover {
    color: #FD5;
}

/*--- Cookies Acceptance ---*/
#cookie-popup {
    z-index: 7;
    position: fixed;
    bottom: 0;
    display: block;
    width: 100%;
    padding: 8px;
    color: white;
    font-size: 1.2em;
    background: #006;
    text-align: center;
}

/*--- Special styles ---*/
.capitalize {
    text-transform: capitalize;
}

.uppercase {
    text-transform: uppercase;
}

.lowercase {
    text-transform: lowercase;
}

.error {
    text-align: center;
    font-size: 1em;
    font-style: italic;
    color: red;
}

.tip {
    font-size:0.9em;
    font-style:italic;
    color: green;
}

/*--- Consent box ---*/
.consent {
    display: inline-block;
    border: 1px solid grey;
    border-radius: 16px;
    margin-top: 1em;
    padding: 8px;
    font-size: 1em;
    line-height: 1.6em;
    background: #F0F0F0;
    white-space: normal;
}
.consent-init {
    float: left;
}
.consent-term {
    margin: 0 8px 0 64px;
    padding: 0;
    text-align: left;
}
.consent input {
    background: white;
}
.consent a {
    color: #08F;
    text-decoration: underline;
}

/*--- Policy ---*/
.policy {
    width: 80%;
    margin: 108px auto 64px auto;
    font-size: 1.2em;
    line-height: 1.5em;
    color: #555;
}

/*--- Normal page header ---*/
.page-header {
    position: fixed;
    top: 0;
    left: 0;
    margin: 0;
    padding: 0 8px;
    width: 100%;
    height: 80px;
    background: linear-gradient(to right,#FD7,#FB0);
    border-bottom: 2px solid #080;
    text-align: center;
}

.page-title {
    display: inline-block;
    vertical-align: top;
    margin-top: 36px;
    font-size: 1.6em;
    font-weight: bold;
    color: #050;
}

/*--- Normal page body ---*/
.page-body {
    overflow: auto;
    margin-top: 82px;
    text-align: center;
}

/*--- Normal form table ---*/
.form-table {
    border-collapse: collapse;
    margin: auto;
}
.form-table th {
    padding: 3px;
    text-align: right;
    color: #050;
}
.form-table td {
    padding: 3px;
    text-align: left;
}

/*--- Insufficient fund popup ---*/
#nofund-popup {
    z-index: 4;
    position: fixed;
    top: 128px;
    left: 50%;
    width: 80%;
    transform: translateX(-50%);
    padding: 16px;
    border: 4px solid #A00;
    border-radius: 8px;
    background: #FD7;
    text-align: center;
    line-height: 1.8em;
    white-space: normal;
    overflow: auto;
}

/*--- Compliance popup ---*/
#compliance-popup {
    z-index: 4;
    position: fixed;
    top: 128px;
    left: 50%;
    width: 80%;
    transform: translateX(-50%);
    padding: 16px;
    border: 4px solid #A00;
    border-radius: 8px;
    background: #FD7;
    text-align: center;
    line-height: 1.5em;
    white-space: normal;
    overflow: auto;
}

/*--- News alert ---*/
#news-button {
    width: 100%;
    border: 0;
    padding: 2px;
    background: #AA0000;
    color: white;
    font-size: 1.1em;
    font-weight: bold;
}

#news-alert {
    display: none;
    padding: 8px 32px;
    border-bottom: 1px solid #800;
    background: linear-gradient(#FDA,#FFF);
    color: #800;
    line-height: 1.2em;
    //font-size: 1.1em;
    text-align: center;
    white-space: normal;
    //word-wrap: break-word;
    //word-break: break-all;
}

/*--- Flag SVG ---*/
.flag {
    vertical-align: middle;
    margin-right: 2px;
    width: 24px;
}

