/* CSS file defining all custom CSS added into the site.  */

/* added to prevent horizontal scrolling on mobile*/
html, body {
    overflow-x: hidden;
}

a.deco-none {
    color: #000000 !important;
    text-decoration: none;
}

.bg-menu:hover {
    background-color: #0079C1;
    color: #FFFFFF;
}

.clickable {
    cursor: pointer;
}

/* Align Bootstrap Icon inside btn-close */
.btn-close {
    display: flex;
    align-items: center;
    justify-content: center;
}


/*loading spinner BEGIN*/
#cover-spin {
    position: fixed;
    width: 100%;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: rgba(255, 255, 255, 0.7);
    z-index: 9999;
    display: none;
}

@-webkit-keyframes spin {
    from {
        -webkit-transform: rotate(0deg);
    }
    to {
        -webkit-transform: rotate(360deg);
    }
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

#cover-spin::after {
    content: '';
    display: block;
    position: absolute;
    left: 48%;
    top: 40%;
    width: 40px;
    height: 40px;
    border-style: solid;
    border-color: black;
    border-top-color: transparent;
    border-width: 4px;
    border-radius: 50%;
    -webkit-animation: spin .8s linear infinite;
    animation: spin .8s linear infinite;
}

/*loading spinner END*/

@keyframes auto-refresh-value-changed {
    from {
        background-color: #dbeafe;
    }
    to {
        background-color: transparent;
    }
}

.auto-refresh-value-changed {
    animation: auto-refresh-value-changed 700ms ease-out;
}

@media (prefers-reduced-motion: reduce) {
    .auto-refresh-value-changed {
        animation: none;
    }
}

.footer-links a {
    color: #3c4043;
    cursor: pointer;
    margin-left: 40px;
    white-space: nowrap;
    text-decoration: none;
    letter-spacing: .00625em;
    /*font-family: 'Google Sans',Roboto,Arial,sans-serif;*/
    font-size: 1.1rem;
    font-weight: 500;
    line-height: 1.5rem;
}

.pills-button-custom.active {
    /* placeholder*/
    border: 1px solid #dadce0 !important;
    color: #1967d2 !important;
    padding: 5px 13px !important;
    margin: 8px 8px 8px 0 !important; /* top right bottom left */
    background-color: #e8f0fe !important;
    box-shadow: none !important;
}

.pills-button-custom:not(.active) {
    background-color: transparent !important;
    border: 1px solid #dadce0 !important;
    color: #3c4043 !important;
    padding: 5px 13px !important;
    margin: 8px 8px 8px 0 !important; /* top right bottom left */
    box-shadow: none !important;
}

/*heroes begin*/
@media (min-width: 992px) {
    .rounded-lg-3 {
        border-radius: .3rem;
    }
}

/*heroes END*/

/* headers BEGIN*/
.form-control-dark {
    color: #fff;
    background-color: var(--bs-dark);
    border-color: var(--bs-gray);
}

.form-control-dark:focus {
    color: #fff;
    background-color: var(--bs-dark);
    border-color: #fff;
    box-shadow: 0 0 0 .25rem rgba(255, 255, 255, .25);
}

.bi {
    vertical-align: -.125em;
    fill: currentColor;
}

.text-small {
    font-size: 85%;
}

.dropdown-toggle {
    outline: 0;
}

/* headers END*/


/*pricing page BEGIN*/
.pricing-container {
    max-width: 960px;
}

.pricing-header {
    max-width: 700px;
}

/*pricing page END*/

.no-wrap-row {
    white-space: nowrap;
    overflow: hidden;
}

.optioncharts-table-styling {
    font-size: .875rem;
    line-height: 1.5;
    font-weight: 400;
}

.option-contract-form-card {
    border-radius: 0.5rem;
}

.option-contract-form-card-body {
    padding: 0.5rem 0.75rem !important;
    font-size: 0.75rem;
    line-height: 1.25;
}

.option-contract-form-table th,
.option-contract-form-table td {
    padding: 0.15rem 0.5rem 0.15rem 0 !important;
    font-size: 0.75rem;
    vertical-align: middle;
}

.option-contract-form-table th {
    font-weight: 500;
    color: #6b7280;
    padding-bottom: 0.2rem !important;
}

.option-contract-form-table .form-select-sm {
    min-height: calc(1.5em + 0.35rem + 2px);
    padding-top: 0.15rem;
    padding-bottom: 0.15rem;
    padding-left: 0.5rem;
    font-size: 0.75rem;
}

.option-contract-quote {
    font-size: 0.75rem;
    line-height: 1.25;
}

.option-contract-section-title {
    font-size: 0.75rem;
    font-weight: 600;
    color: #111827;
    margin: 0 0 0.15rem 0;
    padding-bottom: 0.25rem;
    border-bottom: 1px solid #e5e7eb;
}

.option-contract-details-grid {
    column-gap: 1.75rem;
}

.option-contract-details-grid > div {
    min-width: 0;
}

.option-contract-detail-row {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: baseline;
    column-gap: 0.75rem;
    padding-top: 0.2rem;
    padding-bottom: 0.2rem;
    border-bottom: 1px solid #f3f4f6;
}

.option-contract-detail-label {
    color: #6b7280;
    white-space: nowrap;
    font-size: 0.75rem;
}

.option-contract-detail-value {
    font-weight: 500;
    color: #111827;
    text-align: right;
    font-variant-numeric: tabular-nums;
    font-size: 0.75rem;
    min-width: 0;
    overflow-wrap: anywhere;
}

.option-contract-bid-ask {
    display: inline-grid;
    grid-template-columns: 6.5ch auto auto;
    column-gap: 0.2rem;
    justify-content: end;
    align-items: baseline;
}

.option-contract-bid-ask > span:first-child {
    text-align: right;
    font-variant-numeric: tabular-nums;
}

.option-contract-bid-ask > span:last-child,
.option-contract-bid-ask-x {
    font-size: 0.65rem;
    font-weight: 400;
    font-variant-numeric: tabular-nums;
}


/*signin BEGIN*/

.signin-body {
    height: 100%;
    display: flex;
    align-items: center;
    padding-top: 40px;
    padding-bottom: 40px;
    /*background-color: #f5f5f5;*/
}

.form-signin {
    width: 100%;
    max-width: 330px;
    padding: 15px;
    margin: auto;
}

.form-signin .checkbox {
    font-weight: 400;
}

.form-signin .form-floating:focus-within {
    z-index: 2;
}

.form-signin input[type="email"] {
    margin-bottom: -1px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.form-signin input[type="password"] {
    /*margin-bottom: 10px;*/
    margin-bottom: -1px;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.form-signin input[type="email"] {
    margin-bottom: -1px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.form-signin input[type="text"] {
    margin-bottom: -1px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

/*signin END*/

/*features (plans page) BEGIN*/
.b-example-divider {
    height: 3rem;
    background-color: rgba(0, 0, 0, .1);
    border: solid rgba(0, 0, 0, .15);
    border-width: 1px 0;
    box-shadow: inset 0 .5em 1.5em rgba(0, 0, 0, .1), inset 0 .125em .5em rgba(0, 0, 0, .15);
}

.feature-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 4rem;
    height: 4rem;
    margin-bottom: 1rem;
    font-size: 2rem;
    color: #fff;
    border-radius: .75rem;
}

.icon-link {
    display: inline-flex;
    align-items: center;
}

.icon-link > .bi {
    margin-top: .125rem;
    margin-left: .125rem;
    transition: transform .25s ease-in-out;
    fill: currentColor;
}

.icon-link:hover > .bi {
    transform: translate(.25rem);
}

.icon-square {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    font-size: 1.5rem;
    border-radius: .75rem;
}

.rounded-4 {
    border-radius: .5rem;
}

.rounded-5 {
    border-radius: 1rem;
}

.text-shadow-1 {
    text-shadow: 0 .125rem .25rem rgba(0, 0, 0, .25);
}

.text-shadow-2 {
    text-shadow: 0 .25rem .5rem rgba(0, 0, 0, .25);
}

.text-shadow-3 {
    text-shadow: 0 .5rem 1.5rem rgba(0, 0, 0, .25);
}

.card-cover {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

/*features (plans page) END*/

.remove-link-styling {
    text-decoration: none !important;
}

/* custom color for bootstrap button primary BEGIN */
.btn-primary, .btn-primary:hover, .btn-primary:active, .btn-primary:visited {
    background-color: #0079D3 !important;
}

.btn-outline-primary {
    color: #0079D3;
    background-color: transparent;
    background-image: none;
    border-color: #0079D3
}

.btn-outline-primary:hover {
    color: white;
    background-color: #0079D3;
    border-color: #0079D3
}

.btn-check:active + .btn-outline-primary, .btn-check:checked + .btn-outline-primary, .btn-outline-primary.active, .btn-outline-primary.dropdown-toggle.show, .btn-outline-primary:active {
    color: #fff;
    background-color: #0079D3;
    border-color: #0079D3;
}

/* custom color for bootstrap button primary END */

.chart-title-custom1 {
    font-size: 1.3rem;
    /*font-weight: 400;*/
    /*letter-spacing: 0;*/
    /*line-height: 1.5rem;*/
}

.chart-title-custom2 {
    font-size: 1.7rem;
}

.black-text {
    color: black !important;
}

i {
    /*color: black;*/
    color: rgba(0, 0, 0, 0.80);
}

.responsive-video {
    max-width: 100%;
    height: auto;
}

/* added so bootstrap button groups have vertical spacing when small screen. */
@media (max-width: 600px) {
    .btn-group.inline {
        margin-bottom: 5px; /* adjust as needed */
    }
}

.border-soften-fix {
    border: 1px solid #ced4da !important;
}

/* text for legalese docs */
.oc-st {
    font-size: 12px;
}

.btn-secondary {
    background-color: #6c757d !important;
}

/* Server-side table sort headers */
thead th.oc-sortable-th {
    cursor: pointer;
}

thead th.oc-sortable-th.desc:after {
    content: '↓';
}

thead th.oc-sortable-th.asc:after {
    content: '↑';
}

/* jQuery UI Range Slider Styling BEGIN */
.oc-range-slider {
    height: 6px;
    border: none;
    background: #e5e7eb;
    border-radius: 3px;
}
.oc-range-slider .ui-slider-range {
    background: #3b82f6;
    border-radius: 3px;
}
.oc-range-slider .ui-slider-handle {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #3b82f6;
    border: 2px solid white;
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
    top: -5px;
    cursor: pointer;
}
.oc-range-slider .ui-slider-handle:focus {
    outline: none;
}
/* jQuery UI Range Slider Styling END */

/* Hide scrollbar but keep scroll functionality */
.scrollbar-hide {
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.scrollbar-hide::-webkit-scrollbar {
    display: none;
}

/* Center images in blog post content */
.tw-prose .tw-border-t img {
    margin-left: auto;
    margin-right: auto;
}
