/* Basic */

body{
    font-family: 'Open Sans', 'Noto Sans TC',sans-serif;
}
.btn-primary {
    color: #fff;
    border-color: #1A2A4D;
    background-color: #1A2A4D;
    box-shadow: none;
    transition-duration: .2s;
    transition-property: background-color, box-shadow, transform;
}
.btn-primary:hover {
    color: #fff;
    border-color: #333; 
    background-color: #333;
}
.focused .form-control {
    border-color: rgba(50, 151, 211, .25);
}

/* Nav */

nav .nav-link{
    font-size: 1.3em;
}
nav .breadcrumbs {
    color: rgba(255,255,255,.7);
}
nav .breadcrumbs a {
    color: #fff;
    transition: color .2s;
}
nav .breadcrumbs a:hover {
    color: #46CDEF;
}

/* Sidebar */

@media (min-width: 768px) {

    .navbar-vertical.navbar-expand-md {
        max-width: 200px;
    }
    .navbar-vertical.navbar-expand-md .navbar-brand-img {
        max-height: 2rem;
    }
    .navbar-vertical.navbar-expand-md.fixed-left + .main-content {
        margin-left: 200px;
    }
}

/* Login */

.console-login .logo img {
    max-height: 1.5rem;
}

/* User List */

.userList tbody tr {
    transition: background-color .2s;
}
.userList tbody tr:hover {
    background-color: #eee;
}

/* Usage Report */

.usageReport .card-body{
    background:#fff;
}
.usageReport .datepicker .input-group.focus .input-group-text,
.usageReport .datepicker .input-group.focus .form-control {
    border-color: #5e72e4;
    color: #5e72e4;
}
.usageReport .contract.inactive h4{
    background-color:#ccc !important;
}
.usageReport .contract table .zero {
    color: rgba(255,255,255,.3);
}
.usageReport .pricing .apiList{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 1rem;
}
.usageReport .pricing table th,
.usageReport .pricing table td{
    padding-left: 1rem;
    padding-right: 1rem;
}
.usageReport .pricing table th:last-child,
.usageReport .pricing  table td:last-child{
    text-align: right;
}
.usageReport .pricing table .incomplete td{
    background-color: lightyellow;
    color: rgba(0,0,0,.4);
}
.usageReport .modal-backdrop.show {
    opacity: .6;
}
.usageReport .col-form-label {
    justify-content: left;
}
.usageReport .date {
    width: 8em;
}
.usageReport .chart {
    position: relative;
}
.usageReport .loading {
    background: #fff;
    align-items: center;
    display: none;
    font-size: 5em;
    height: 100%;
    justify-content: center;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}
.usageReport .loading.show{
    display: flex;
}
.usageReport .loading .fa-spinner{
    animation: loading 2s infinite linear;
}
@keyframes loading {
    from {
        color: #46CDEF;
        transform: rotate(0deg);
    }
    50% {
        color: #1C1C4D;
        transform: rotate(180deg);
    }
    to {
        color:#46CDEF;
        transform: rotate(360deg);
    }
}
.usageReport .tooltip-inner{
    font-family: 'Open Sans', 'Noto Sans TC',sans-serif;
    max-width: initial;
    width: auto;
}
.usageReport .table thead th {
    border-bottom: 1px solid rgba(255,255,255,.2);
    color: #a4bde8;
    text-transform: initial;
}
.usageReport .table tbody tr {
    transition: background-color .2s;
}
.usageReport .table tbody tr:hover {
    background-color: rgba(255,255,255,.15);
}
.usageReport .table tfoot {
    background-image: linear-gradient(to bottom, rgba(0,0,0,.3), rgba(0,0,0,0));
}

/* Create Contract */

.createContract .product {
    display: inline-block;
    margin-bottom: 2.5rem;
    margin-right: 2.5rem;
    vertical-align: top;
}
.createContract table{
    background: #fff;
    transition: background-color .2s;
}
.createContract .product.inactive table,
.createContract .product.inactive .rowControl{
    opacity: .5;
}
.createContract .product.inactive table{
    background:rgba(0,0,0,.1);
}
.createContract .card table th,
.createContract .card table td{
    padding-left: .5rem;
    padding-right: .5rem;
    position: relative;
    vertical-align: middle;
}
.createContract table th:last-child,
.createContract table td:last-child{
    text-align: right;
}
.createContract .card table td{
    text-align: right;
}
.createContract .bracket span{
    display: inline-block;
}
.createContract .bracketStart,
.createContract .bracketEnd,
.createContract .blank{
    width:7em;
}
.createContract table input{
    text-align: right;
}
.createContract table .invalid-tooltip{
    right: 0.5em;
    top: calc(100% - 0.5em);
}
.createContract .price{
    width:6.5em;
}
.createContract .price input{
    width: calc(100% - 1em);
}
.createContract .rowControl{
    font-size:1.3em;
    padding-left: 1px;
    padding-right: 1px;
}
.createContract .rowControl i{
    transition: color .2s;
}
.createContract .rowControl i:not(.disabled){
    cursor: pointer;
}
.createContract .rowControl i:not(.disabled):hover{
    color:#5e72e4;
}
.createContract .rowControl i.disabled{
    opacity: .5;
}
.createContract .info .col-form-label{
    justify-content: flex-end !important;
}
.createContract .info .form-inline label:first-child {
    width:5em;
}

/* Dashboard */

.dashboard .card-footer .btn {
    font-size: 1em;
}

/* Profile */

body.profile .has-success:after,
body.profile .has-danger:after {
    top: 34px;
}

.search-bar {
    outline: none;
    background-color:rgba(255, 255, 255, 1); 
    border: 1px solid rgba(170, 170, 170, 1);
    border-radius: 5px 5px 5px 5px;
    width: 223px;
    height: 30px;
    margin-left:20px;
}