/********************************************************************************************************
    FlexBox
********************************************************************************************************/

.flexBox {
    display: box ! important;
    display: -webkit-box ! important;
    display: -moz-box ! important;
    box-orient: vertical;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
}
.inlineFlexBox {
    display: inline-box ! important;
    display: -webkit-inline-box ! important;
    display: -moz-inline-box ! important;
    box-orient: vertical;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
}
.flexBoxH {
    display: box ! important;
    display: -webkit-box ! important;
    display: -moz-box ! important;
    box-orient: horizontal;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
}
.inlineFlexBoxH {
    display: inline-box ! important;
    display: -webkit-inline-box ! important;
    display: -moz-inline-box ! important;
    box-orient: horizontal;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
}
.flex1 {
    box-flex: 1;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
}
.flexCenter {
    box-align: center;
    -webkit-box-align: center;
    -moz-box-align: center;
}

.gc_flexBoxH { white-space: nowrap; letter-spacing: -0.25em; }
.gc_flexBoxH > * { display: inline-block; white-space: normal; letter-spacing: normal; vertical-align: top; }

.inline { display:inline-block; }
.absolute {position: absolute;}
.relative {position: relative;}
.center {text-align: center;}
.middle > * {vertical-align: middle;}
.hidden {visibility: hidden;}
.dotdotdot {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}
.shade {
    background-color: rgba(0,0,0,0.5);
}

/********************************************************************************************************
    Wait Dialog
********************************************************************************************************/
div.gc_wait {
    text-align: center;
}
div.gc_wait .body {
    background-color:rgba(0, 0, 0, 0.75);
    display: inline-block;
    padding: 1em 2em;
    color: white;
    margin: 0 2em;
    border-radius: 1em;
}
div.gc_wait .body img {
    margin: 0.5em;
}
.gc_wait.newload .body {
    position: absolute;
    background-color: transparent;
    top: 0;
    left: 0; right: 0;
    margin: 0;
    padding: 0;
}
.gc_wait.newload .body img {
    width: 35%;
    max-width: 10em;
    height: auto;
    margin: 0;
}

/********************************************************************************************************
    Alert Dialog
********************************************************************************************************/
div.gc_alert .title {
    background-color: transparent;
    font-family: maiden, arial;
    font-weight: bold;
    font-size: 1.5em;
    text-align: top;
    color: #4d1916;
}
div.gc_alert .exit {
    position: absolute;
    width: 2.5em;
    height: 2.5em;
    right: -1em;
    top: -1em;
}
div.gc_alert.gc_popup .body {
    padding: 1em;
    font-weight: bold;
}
div.gc_alert.gc_popup .body img.gc_alert {
    width: 1.5em;
    height: 1.5em;
    vertical-align: middle;
    margin-right: 1em;
}
div.gc_alert span {
    word-wrap:break-word;
}

/********************************************************************************************************
    Confirm Dialog
********************************************************************************************************/
#confirm, div.gc_alert {
    position: absolute;
    border-radius: 0.25em;
    font-weight: bold;
    color: #3a3a3a;
    background-color: #b5d448;
    box-shadow: 0 5px 10px #3a3a3a;
    -webkit-box-shadow: 0 5px 10px #3a3a3a;
    text-align: center;
    padding: 0;
    margin: 1em;
    max-width: 90%;
}
#confirm .body {
    padding: 1em 2em 0 2em;
    overflow: hidden;
}
#confirm .gc_ibutton {
    width: 6.5em;
    margin: 0.25em;
}
#confirm .gc_ibutton .text {
    padding: 0.5em 0;
}

/********************************************************************************************************
    TextBox
********************************************************************************************************/
.gc_text {
    border-radius: 0.5em;
    height: 2.5em;
    background-color: white;
    color: #858183;
    margin: 0.25em;
    border: 0.125em solid #77a11c;
    border-radius: 0.4em;
    box-shadow: inset 0 0 0.25em #a4a4a4;
    -webkit-box-shadow: inset 0 0 0.25em #a4a4a4;
    padding-left: 0.5em;
}
.gc_text > div {
    height: 100%;
    margin: 0 0.125em;
}
.gc_text > img {
    vertical-align: middle;
    margin: 0 0.25em;
}
.gc_text input {
    border: 0;
    height: 100%;
    width: 100%;
    font-size: 0.9em;
    font-family: sans-serif;
    background: url(../images/transparent.png);
}
.gc_text input:focus {
    outline: none;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    -webkit-focus-ring-color: rgba(0,0,0,0);
    -webkit-user-modify: read-write-plaintext-only;
}
.gc_text input {
    font-style: italic;
    font-weight: normal;
}
.gc_text input:focus {
    color: #3a3a3a;
    font-style:normal;
    font-weight: bold;
}

/********************************************************************************************************
    Button
********************************************************************************************************/

.gc_ibutton .text {
    font-family: arial;
    font-weight: bold;
    padding: 0.5em 1.5em;
    color: #49290c;
    text-shadow: 0 0 1px #f3e0ad;
    font-weight: bold;
    box-sizing: border-box;
}


/********************************************************************************************************
    WebFonts
********************************************************************************************************/

.maidenTitle {
    font-family: maiden;
    color: #4d1916;
    font-weight: bold;
}
p.error {
    color: #f3274c;
    margin: 0 0 0.25em;
    font-size: 0.9em;
}



/********************************************************************************************************
    LOGIN WIZARD 
********************************************************************************************************/

#wizard .title {
    height: 3rem;
    overflow: hidden;
    background-color: #31d5f8;
    border-bottom: 1px solid #787878;
}
#wizard .title .gc_ibutton {
    margin: 0.5rem 0;
    line-height: 1rem;
}
#wizard .title .gc_ibutton .text {
    color: #115467;
    font-size: 0.8rem;
    padding: 0.75rem 1rem 0.75rem 0.5rem;
}
#wizard .title img {
    position: absolute;
    width: auto;
    height: 2rem;
    right: 0.5rem;
    top: 0.5rem;
}
#wizard .subtitle {
    font-size: 1.2em;
    font-family: maiden;
    font-weight: bold;
    color: #4d1916;
}   
#wizard .body, #wizard .contents {
    position: relative;
}
#wizard .body {
    padding: 1em;
}
#wizard #login .body, #wizard #forgot .body {
    text-align: center;
}
#wizard #newORexist .body {
    padding: 0;
}
#wizard .panel {
    position: absolute;
    left: 0; right: 0;
    top: 0;
    bottom: 0;
}
#wizard .panel > .flex1 {
    min-height: 2em;
}
#wizard .panel .subtitle {
    position: absolute;
    bottom: 0.5em;
    left: 1em;
    font-size: 1.5em;
}

#wizard .login1 {
    position: relative;
    padding: 1em;
}
#wizard .login1 .maidenTitle {
    font-size: 1.5em;
}
#wizard .login1 .msg {
    color: #426c06;
}
#wizard .login1.gc_focus {
    background-color: #c5e458;
}
#wizard .login1:nth-child(1) {
    border-bottom: 1px solid #a0c632;
}
#wizard .login1 .label {
    font-size: 1.5em;
    font-weight: bold;
}
#wizard .loginbutton .msg {
    font-size: 0.8em;
}
#wizard .login1 img {
    position: absolute;
    top: 1.5em;
    right: 0.5em;
    height: 2.5em;
    width: auto;
}
#wizard .login2 {
    position: relative;
    color: white;
    font-weight: bold;
    margin: 0.25em;
}
#wizard .login2 canvas {
    height: 3.5em;
    width: 100%;
    display: block;
}
#wizard .login2 .content {
    position: absolute;
    top: 0.5em; bottom: 0.5em;
    left: 1em;
    right: 1em;
}
#wizard .login2 .content > * {
    vertical-align: middle;
}
#wizard .login2 .icon {
    height: 2.5em;
    margin-right: 0.5em;
}
#wizard .login2 img:last-child {
    position: absolute;
    top: 0.75em;
    right: 0.5em;
    height: 2em;
}
#wizard .linkbutton {
    margin: 0.25em 0.5em;
    color: #42443b;
    font-weight: bold;
    text-decoration: underline;
}

#wizard .terms, #wizard .footer {
    padding-top: 1em;
    color: #6c9320;
    padding-bottom: 0.5em;
    font-size: 0.9em;
    text-align: center;
}
#wizard .terms .link, #wizard .footer .link {
    display: inline-block;
    color: #42443b;
    font-weight: bold;
}
#wizard .gc_text {
    width: 80%;
    max-width: 14em;
}

#wizard #login, #wizard #forgot {
}
#wizard #login .subtitle, #wizard #forgot .subtitle {
    left:0;right:0;
    text-align:center;
}
#wizard #forgot .cow {
    width: 50%;
    position: absolute;
    bottom: 3em;
    left: 25%;
}
#wizard .gc_ibutton {
    margin: 0.5em 0;
}

/********************************************************************************************************
    DISPLAY POPUP
********************************************************************************************************/
#displayCheck {
    background-color: #b5d448;
    border-radius: 0.25em;
    font-family: oxygen, sans-serif;
    color: #3a3a3a;
    display: inline-block;
    width: 18em;
    max-width: 80%;
}

#displayCheck .body {
    margin: 1em;
    text-align: center;
}

#displayCheck .gc_text {
    width: 80%;
}

#displayCheck label, #display p {
    display: block;
}

#displayCheck .warn {
    color: #4d1916;
    margin: 0.5em;
}

#newORexist .container {
    height: 100%;
    max-width: 800px;
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
}

#newORexist .bubble {
    font-family: maiden;
    color: #4d1916;
    left: 40%;
    right: auto;
    top: 8%;
    position: absolute;
    padding: 0.5em;
    width: 45%;
    text-align: justify;
    font-size: 1.2em;
    border-radius: 0.5em;
    border-width: 12px;
    border-style: solid;
}

#newORexist p { margin: 0 }
#newORexist .bubble img.tail {
    position: absolute;
    left: 5%;
    bottom: -1.85em;
    height: 1.5em;
}

#newORexist .container img.mel {
    position: absolute;
    left: 6%;
    top: 20%;
    max-height: 140%;
}

