/*  ==================== main.css ======================  */




@import url('https://fonts.googleapis.com/css?family=Open+Sans:200|PT+Sans|Source+Sans+Pro');


/* ========= LEGENDS ========== */

/* Note: =====> Legend */

/* [A] html elements styling */
/* [B] viewport  */
/* [C] structure section styling */
/* [D] icon styling */
/* [E] z-index */
/* [F] overrides */

/* Note: =====> Color Legend */

/* [darkest green] #004056 */
/* [dark-green] #2c858d */
/* [light green]  #74ceb7 */
 /*  rgba(116,206,183,1) */



/* ======== [A] html elements styling ====== */


body {
    /*    color: greenyellow;*/
    /* #### Generated By: http://www.cufonfonts.com #### */
    font-family: 'Open Sans', sans-serif;
    /*    font-family: Helvetica Neue,Helvetica,Arial,sans-serif; */
    /*    font-family: 'Source Sans Pro', sans-serif;*/
    /*    font-family: 'PT Sans', sans-serif;*/
    font-size: 4vh;
    font-weight: 400;
    margin: 0px;
    color: #74ceb7;
    min-height: 100vh;
/*    width:100vw; not necessary, creates a scrollbar*/
    background-color: rgba(232,232,232, 0.4)
}

a {
    color:inherit;
    text-decoration: none;
    
}

p {
    /*    margin: 0;*/
    font-family: 'Open Sans', sans-serif;
}

img.flip {
    transform: rotate(180deg)
}


/* ===== [B] viewport ===== */

@-ms-viewport {
    width: device-width;

}


/* ======== [C] structure section styling ======= */

#bottom-fill{

    width: 100%;
    height: 12vh;
}



#wrapper {
    min-height: 100%;
        
/*    margin-bottom: -80px;*/
}

#wrapper:after {
    content: "";
    display: block;
/*    margin-bottom: 20px;*/
}


#header {
    /*    height: 100%;*/
    width: 100vw;
    min-width: 320px;
    height: 22vh;
    min-height: 80px;
    background-color: #004056 ; /*Note: darkest green: #004056 */   
    /*    padding: 15px 0px;*/
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
    position: fixed;
    z-index: 2;
}


#landing-page {
/*    background-color: aquamarine;*/
    position: relative;
/*    height: 68vh;*/
/*    background-color: rgba(116,206,183, 0.20);*/
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    padding-top: 22.25vh; /* ===>  similar to header */
/*    padding-bottom: 5vh;*/

}

#footer {
    
    width: 100%;
    position: fixed;
    z-index: 2;
    padding: 2px;
    bottom: -3px;
    left: 0;
    background-color: #f2f2f2 ;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
   
    
}

#ghost-space {
    height: 12vh;

}

#info {
    position: relative;
/*    margin: 10px 0px;*/
/*    top: -4vh;*/
    padding-bottom: 12vh;

}

/*Note: [STYLE] Have to lower the start of the schedule resume*/
#schedule-resume{
    position: relative;
/*    margin-top: 10px;*/
/*    top: 6vh;*/
    
}

#schedule {
    display:flex;
    justify-content: center;
    flex-wrap: wrap;
    
    
}

#schedule .schedule-head{
    
    position: fixed;
    z-index: 998;
    width: 100vw;
    max-width: 480px;
    
}

#schedule .schedule-wrap {
    
    margin-top: 140px;
    margin-bottom: 100px;
    width: 100vw;
    max-width: 500px;
}
#schedule .menu-item {
    margin-top: 5px;
    
}


#foot-nav{
    
    display:flex;
    font-size: 0.75rem
}


#dynamic-output{
    
    box-sizing: border-box;
    padding: 2px;
/*  height:      16.5vh; */
    max-height: 16vh;
    max-width: 480px;
    margin:0 auto;
    font-size: 4vh ;/*1.5em*/
    background-color: rgba(116,206,183,0.6); /* light-green */
    overflow-y: visible;
    display: block;
/*
    display: flex;
    align-items: center;
    justify-content: space-between;
*/
    
}

/* Note: [C.2] dynamic filter sections */

#dynamic-filters{
    position: fixed;
    z-index: 998;
    right: 0;
    left: 0;
    margin-right: auto;
    margin-left: auto;
    top: 28.8vh;
/*    width: 100vw;*/
    max-width: 480px;
/*    margin: 0 auto;*/
    
}

.filter-cont {
    box-sizing: border-box;
    padding: 4px;
    height: 15.2vh;
    max-height: 25vh;
    max-width: 476px;
/*    max-width: 476px;*/
/*    border: 1px orange solid;*/
    display: flex;
    align-items: center;
    justify-content: center;
}

.filter-selector {
/*    width: 100%;*/
/*    border: 1px solid rgba(0,64,86, 0.6);*/
}


.filter-input{
    width: 300px;   
    height: 10vh;
/*    margin: 0 auto;*/
    font-size: 4vh;
    text-align: center;
    background-color: rgba(116,206,183,0.65);
    color: #004056;
    font-family: inherit;
    
    display: flex;
    align-items: center;
    justify-content: center;
}

.time {
    
    padding: 2vh 0;
}

.close-filter {
    position: relative;
    left: -3vw;
    font-size: 6vh;

    
}

#filters-table-head, #today {
    
    border: 2px solid rgba(0,64,86, 0.6);
    
}

#filters-table-head {
    
    display: flex;
    align-items: center;
    justify-content: space-around;
}


#schedule-table {
    
/*    border: 2px solid red;*/
    margin-top: 13.5vh;
    overflow-y: scroll;
   
    
}


#schedule-table::-webkit-scrollbar {
    width: 0em;
}

#schedule-resume::-webkit-scrollbar {
    display: none;
}

body::-webkit-scrollbar {

    display:none;
}

.chat-button {
    text-align: center;
    color: rgba(0,64,86, 0.75);
    font-size: 16px;
    border: 1px solid rgba(0,64,86, 0.75);
    border-radius: 20px;
    width: 60px;
    position: relative;
    bottom: 3px;
    margin-right: 4px;
    z-index: 0;
}


.chat-button:active {

    background-color: rgba(0,64,86, 0.75);
    color:#74ceb7;

}

.chat-button:focus{

    outline: none;
}

/*

#schedule-table::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
}

#schedule-table::-webkit-scrollbar-thumb {
    background-color: darkgrey;
    outline: 1px solid slategrey;
}
*/

.menu-head,
.menu-item {
    box-sizing: border-box;
    padding: 10px;
    height: 6.5vh; 
    max-height: 60px;
    font-size: 4vh ;/*1.5em*/
    display: flex;
    align-items: center;
    justify-content: space-between;

}

.menu-head {
    background-color: #2c858d;
}

.menu-item {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    color: #2c858d; /* Note: dark green: #2c858d */
    background-color: #74ceb7;
    border: 1px solid #2c858d;
    border-top: 0px;
}


.accordion{
    box-sizing: border-box;
    padding: 10px;
    height: 36.5vh; 
    max-height: 250px;
    font-size: 4vh ;/*1.5em*/
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    
}

.accordion-extended{
    box-sizing: border-box;
    padding:5px;
    height: 73vh;
    max-height: 430px;
    font-size: 4vh ;/*1.5em*/
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;

}

.foot-link {
    
    height: 12vh; /* Before: 10vh */ 
/*    max-height: 80px;*/
    width: 33.3333333333333333%;
    display: flex;
    text-align: center;
    flex-direction: column;
    justify-content: space-around;
    
    
    
    
}


#game-info {
    
    background-color: rgba(0,64,86, 0.75);
    height: 4vh;
    font-size: 3vh;
    border: 1px solid rgba(0,64,86, 1);
    color: white;
    
}

.map {
    
    width: 100vw;
    height: 70vh;
}

.map-wrap {
    z-index: 0;
    position:absolute;
    top: 22vh;

}

/* ----- chat styling ----- */

#chat{
    
    width: 100vw;
    
}

#chat-text {

    width: 100%;

}


#chat-form {

    width: 480px;
    margin: 0 auto;
}

.chat-output{
    
    width: 100vw;
    max-width: 480px;
    position: relative;
    z-index: -1;
    top: 5vh;
/*    background-color: red;*/
/*    margin: 0 auto;*/
    
    
}
.chat-input {
    
    width: 100vw;
    max-width: 480px;
/*    margin: 0 auto;*/
    position: fixed;
    /*top: 80vh;*/
    bottom: 12vh;
    display: flex;
    justify-content: space-around;
}

.chat-input input {
    
    width: 30vw;
    max-height: 6vh;
    min-height: 20px;
    /*font-size: 20px;*/
    font-size: 1.2em;
    max-width: 250px;
}

.chat-input button {
    width: 18vw;
    max-height: 6.75vh;
    vertical-align: middle;
    min-height: 20px;
    font-size: 1.2em;
    
}

#splash-screen {
    position:relative;
    top: -10px;
    z-index:0;
    margin: 0 auto;
    width: 100vw;
    height: 70vh;
    background-color: rgba(116,206,183,0.6); /* light-green */

}

#chat-view {
    position: relative;
    z-index:1;  /* -1 */
    /*visibility: hidden;*/
    /*display: none;*/
}

#splash-login{

    font-size: 0.75em;
    width: 320px;
    margin: 0 auto;
    padding-top: 20vh;
    padding-bottom: 30vh;
    color: rgba(0,64,86, 0.75);
}

#splash-login table td{

    padding: 5px;
}

#splash-login input {

    width: 170px;
    font-size: 18px;
    height: 26px;
    vertical-align: 25%;
    border: none;

}
#splash-login #buttons{

    text-align: center;
}
#splash-login #buttons button, #chat-header button {

    text-align: center;
    color: rgba(0,64,86, 0.75);
    font-size: 0.75em;
    border: 2px solid rgba(0,64,86, 0.75);
    border-radius: 20px;
    width: 100px;
}

#splash-login #buttons button:active, #chat-header button:active {

    background-color: rgba(0,64,86, 0.75);
    color:#74ceb7;

}

#chat-header button {

    position:relative;
    left: 10px;

}

#chat-header {
    height: 5vh;
    text-align:center;
    background-color: rgba(116,206,183,0.6); /* light-green */
    position: fixed;
    width: 100vw;
    z-index: 1;
    /*top: -2px;*/
    top: 22vh;
}



#splash-login #buttons button:focus {
    outline: 0;

}

.post img {
    height: 20px;
    vertical-align: middle;

}

#chat-output {
    position: relative;
    min-width: 320px;
    max-width: 480px;
    margin: 0 auto;
    z-index: -1;
    overflow: scroll;
    height: 54vh;

}

#chat-output::-webkit-scrollbar {
    display: none;
}

#chat-output .text {

    color: rgba(0,64,86, 0.75);
}

.user-post .text {
    color: #2c858d;
}

.user-post .username{

    font-size: 65%;

}

.user-post {
    margin-left: 160px;

}

#chat-output .post {
    margin-bottom: 13px;

}

.user-post img {

    vertical-align: bottom;
}

/* ======= [D] icon styling ======= */
#logo-text, #logo-group img{
    
    position:relative;
    top:-10px;
/*    border: 1px solid red;*/
}

#logo-text {
    width: 64px;
   
    margin: 0 auto;
    display: inline-block;
    top: 40px;
    left: 7px; 
/*    TODO: center #logo-text */
    font-size: 24px;
    position: relative;
/*    vertical-align: top;*/
    color: #004056; /*light green: #74ceb7*/
    font-weight: 200;
    /*    border: 1px solid red;*/
    }

#logo-group img{
/*      border: 1px solid red;*/
    min-width: 72px;    
/*      width: 10vh;*/
}


#back-arrow {
    /*    border: 1px red solid;*/
    margin: 15px 0px;
    /*    Before: margin: 15px 5px*/
}

#logo-group {
    
    width: 50px;

    
}


.teams-match {
    
    max-width: 45vw;
}

/* ========= [E] z-index =======  */


.to-the-back {
    
    z-index: 1;
}

.to-the-top{
    
    z-index: 15!important;
}

.over-the-top {

    z-index: 100!important;

}

/*  =============== [F] overrides =============== */

/*TODO: sepparate in a new .css file. add link as last style. */

.light-bck {
    background-color: rgba(116,206,183, 0.4)
}

.white-bck {
    
    background-color: rgba(116,206,183, 0.13)
}


.font-20 {
    
    font-size:  3.2vh; /* 20px */
    color: #004056;
}

.font-18 {
    font-size: 2.7vh;
    color: #004056;
    
}

.center {
    
    margin: 0 auto;
    position: relative;
    top: -13vh;

}

.vert-al-ball {
    
    margin-top: 40vh;
}

.block {
    
    display: block;
    border: 1px solid red;
}

#landing-page a.init{
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100vh;
    
}

img[height="30px"]{
    
/*    border: 1px solid red;*/
    height: 5vh;
}

.darkest-green {
    
    color: rgba(0,64,86, 0.6);
    /*  color: #004056;darkest-green */
}

.month {
    
    width: 100vw;
    max-width: 480px;
    margin: 0 auto;
    text-align: center;
    
}

tr.table-row {
    
    font-size: 3.8vh;
    color: rgba(0,64,86, 0.87);
    display:flex;
    flex-direction: row;    
    align-items: center;
    justify-content: center;
    border: 1px solid #004056;
    border-top: 0px;
    background-color:  rgba(116,206,183, 0.4)
   
}

.table-row td{
    
    width: 100%;
    
    
}

.translucent {
    
    opacity: 0.9;
    
}


.ng-hide{
   
    height: 0;
    width: 0;
    background-color: transparent;
    top:-200px;
    left: 200px;
    
}

#time-input {
    width: 100px;
    background-color: #74ceb7;
    border: none;
    font-size: medium;
    color: #004056;
}

.text-center {

    text-align: center;
}

.small {
    font-size: 20px;
    max-font-size: 12px!important;

}