#top{
    display: flex;
    width: 100%;
    background: #293742;
    height: 60px;
    padding:0;
}

#logo {
    display:flex;
    align-items: center;
    justify-content: flex-start;
}

#logo img{
    height:50px;
    margin-right:15px;
}

#title {
    height:50px;
}

#logo-title p{
    font-weight:900;
    font-size:14px;
    text-transform: uppercase;
    color:#fff;
    line-height:1.2;
}

#logo-title p:first-child{
    font-weight:300;
    font-size:10px;
    text-transform: uppercase;
    color:#fff;
    line-height:1;
}

#menu {
    display:flex;
    align-items:center;
    justify-content:flex-end;
}

#menu a{
    display:flex;
    align-items:center;
    justify-content:center;
    height:60px;
    padding:0 20px;
    color:#fff;
    transition:all 0.2s;
}

#menu a:hover{
    color:var(--primary);
    /* background:var(--gray-700); */
}

#main{
    min-height:calc(100vh - 120px);
}

#main h1{
    font-size:34px;
    text-align:center;
    font-weight:900;
    padding:15px 0 25px;
    color:var(--gray-600);
    text-transform:uppercase;
}

#main h3{
    font-size:22px;
    text-align:center;
    font-weight:700;
    padding:15px 0;
    color:var(--gray-600);
}

#main h4{
    font-size:18px;
    text-align:center;
    font-weight:700;
    padding:15px 0 5px 0;
    color:var(--gray-600);
}

#main p{
    margin-bottom:15px;
}

#home-img img{
    max-height:calc(100vh - 160px);
}

#home-text{
    display:flex;
    flex-direction: column;
    align-items:flex-start;
    justify-content:center;
    padding:30px;
}

#home-text h1{
    font-size:42px;
    font-weight:900;
}

#home-text p{
    font-size: 15px;
    color:var(--gray-500);
}

#home-actions{
    padding-top:15px;
}

#home-actions .btn{
    margin-right:15px;
    margin-bottom:15px;
}

.qa {
    display: flex;
}

.qa-mark {
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    width:40px;
    height:40px;
    border-radius:20px;
    background:var(--secondary-50);
    color:#fff;
    font-size:21px;
    font-weight:900;
    border:3px solid var(--secondary);
    margin-right:30px;
}

.question{
    font-size:21px;
    color: var(--primary);
    font-weight:900;
    margin-bottom: 5px !important;
}

.rules h4{
    font-size:22px;
    color: var(--primary);
    font-weight:900;
    margin:30px 0 15px 0;
}

.rules p.sub {
    padding-left:20px;
}

.rules table{
    margin:15px 0 30px 0;
}

.container table th{
    font-weight:700;
}

.container table th,
.container table td{
    border:1px solid var(--gray-300);
    padding:5px;
    vertical-align: top;
}

.login{
    min-height:calc(100vh - 120px);
    display:flex;
    align-items:center;
    justify-content: center;
}

#login-container{
    width:360px;
    max-width:90%;
}

.profile-container{
    min-height:calc(100vh - 120px);
    display:flex;
    align-items:center;
    justify-content: center;
}

#profile{
    padding:15px 0;
    width:600px;
    max-width:90%;
}

.col-left {
    padding:8px 16px;
    background:var(--gray-200);
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    font-weight:600;
}

.col-right {
    padding:8px 16px;
    border: 1px solid var(--gray-200);
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
}

/* .login input[type=text],
.login input[type=password]{
    width:300px;
} */

.q-mark {
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    width:30px;
    height:30px;
    border-radius:15px;
    background:var(--secondary);
    color:#fff;
    font-size:18px;
    font-weight:900;
    cursor:pointer;
    /* border:3px solid var(--secondary); */
}

.info {
    display:flex;
    padding:15px;
    background:var(--gray-100);
    border: 1px solid var(--gray-300);
    border-radius:5px;
}

.info-icon {
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    width:30px;
    height:30px;
    border-radius:15px;
    background:var(--green);
    color:#fff;
    font-size:18px;
    font-weight:900;
    margin-right:15px;
}

.info-text p{
    color: var(--gray-500);
    font-style: italic;
    font-size: 13px;
}

.section-title{
    background:var(--gray-600); 
    margin:15px 0;
    font-size:20px;
    font-weight:700;
    padding:8px 15px;
    color:var(--gray-100);
    border-radius: 5px;
}

.label-inline{
    background:var(--gray-100); 
    padding:5px 15px; 
    border:1px solid var(--gray-300);
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    /* cursor:pointer; */
}

.input-inline{
    border-left:none !important;
    border-top-left-radius: 0px !important;
    border-bottom-left-radius: 0px !important;
}

.select-inline{
    border-left:none !important;
    border-top-left-radius: 0px !important;
    border-bottom-left-radius: 0px !important;
}

@media only screen and (max-width: 600px){
    .label-inline{
        border-top-left-radius: 5px;
        border-top-right-radius: 5px;
        border-bottom-left-radius: 0px;
        /* cursor:pointer; */
    }
    
    .input-inline,
    .select-inline{
        border-left:1px solid var(--gray-300) !important;
        border-top-left-radius: 0px !important;
        border-top-right-radius: 0px !important;
        border-bottom-left-radius: 5px !important;
        border-bottom-right-radius: 5px !important;
    }
}

.hidden{
    display:none;
}

.err{
    color: var(--red);
    font-weight: 500;
    /* margin-top: -10px; */
    margin-bottom: 10px;
}

#home-btns{
    display:flex;
    padding:15px;
    align-items: center;
    justify-content: center;
}

#home-btns a{
    margin:15px;
}


#footer{
    background: var(--primary-50);
    height: 60px;
}

#footer{
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
}

table {
    width:100%;
    page-break-inside: auto;
    font-size:12px;
}

th{
    padding:8px 16px;
    border: 1px solid var(--gray-300);
    font-weight:700;
}

td{
    padding:5px 10px;
    border: 1px solid var(--gray-300);
}

.view p{
    padding: 5px 0;
}

.view table {
    width:100%;
    page-break-inside: auto;
    font-size:13px !important;
}

.view tr{
    page-break-inside: avoid;
    page-break-after: auto;
}

.view td{
    padding:8px 16px;
    border: 1px solid var(--gray-300);
}

.view .heading{
    font-weight:700;
}

.view .highlight{
    background:var(--gray-200);
    font-weight:700;
    text-align:center;
}


@media print{    
    .no-print, .no-print * {
        display: none !important;
    }
}