﻿@import url('open-iconic/font/css/open-iconic-bootstrap.min.css');

:root {
    --font-primary: 'Montserrat', sans-serif;
    --font-secondary: 'Montserrat', sans-serif;
    --font-tertiary: 'Montserrat', sans-serif;
    --bg-main: rgb(238,238,238);
    --starr-color: rgb(45, 104, 196);
    --starr-alt-color: rgb(0, 90, 156);
    --starr-light: white;
    --starr-link-color: rgb(8, 92, 180);
    --toggle-button-color: rgb(45, 104, 196);
    --toggle-button-border-color: rgb(0, 66, 112);
    --toggle-button-font-color: white;
    --title-color: #025997;
    --title-size: 2.5rem;
    --grid-badge-background: #3b679e;
    --grid-box-shadow: #025997 0px 1px;
    --toolbar-background: rgb(246,248, 249);
    --toolbar-color: #212325;
    --authorization-background: #eee;
    --authorization-failure-background: #920000;
    --authorization-failure-color: white;
    --nav-base-color: rgba(17,68,119,.90);
    --nav-active-bacgkround: white;
    --nav-active-color: rgb(17,68,119);
    --nav-border-color: rgb(17,68,119); /* #B0C4DE; */
    --nav-hover-color: rgba(255,255,255,.90);
    --nav-active-border: 5px;
    --default-margin: .25rem;
}

html, body {
    font-size: 1.0rem;
    font-family: var(--font-primary);
    background-attachment: fixed, scroll;
    background-size: cover;
    background-image: url("../images/3433814.jpg");
    max-width: 100%;
    width: 100%;
    overflow-x: hidden
}
.hard-link {
    text-decoration:underline;
    margin-top:12px;
    margin-right:25px;
}

.follow-up-title {
    background-color: var(--toolbar-background);
    color: var(--starr-color);
    font-size:1rem;
    padding:7px;
    margin-top: 12px;
    border-bottom:1px solid #ccc;
}

.navbar-brand {
    color: var(--nav-base-color);
}

.navbar-grey {
    background-color: var(--bg-main);
}

.title {
    color: var(--title-color);
    font-size: var(--title-size);
    font-weight: bold;
}

.tooltip-target {
    z-index: 9999 !important; /* Use a high number to ensure it's on top */
}

.top-bar-divider {
    margin-top: 0;
    margin-bottom: var(--default-margin);
}

.card-tight-layout {
    margin:1px;
    padding: 1px;
}

.top-bar-layout {
    display: flex;
    flex-direction: row;
    justify-content: right;
    margin-top: var(--default-margin);
}

.select-max {
    max-width:250px;
    font-size: 11pt;
}

.scrollable-container {
    overflow-x: auto;
    white-space: nowrap;
}

.customer-trans-container {
    min-width:475px;
    width:475px;
}

.horizontal-line {
    margin:1px;
}

.nav-user {
    font-size: .75rem !important;
    padding-top: 4px;
}

.nav-select {
    max-width:50px;
}

.dashboard {
    margin-left:12px;
    margin-right:12px;
}

.warning-notification .k-notification-container .k-notification {
    width: 300px;
    height: 50px;
    font-size: 1.5em;
    text-align: center;
    align-items: center;
}
.diary-entries {
    height: 305px;
    max-height: 305px;
    overflow-y: visible;
   font-size: .75rem;
}

.small-label {
    font-size:.90rem !important;
    color:#333 !important;
    font-style:italic !important;
    margin-right:7px;
    margin-bottom:1px
}

.card {
    background-color: rgba(255,255,255, .55) !important;
}

.card-header {
  background-color: rgba(238,238,238, .55) !important;
}

.card-body {
    background-color: rgba(255,255,255,.55) !important;
}
.form-group {
    margin-bottom: 1rem;
}

.form-footer {
    background-color: rgba(255,255,255, .55) !important;
    font-size:.85rem !important;
}

.card-header-flex {
    display: flex;
    justify-content: space-between;
}

.card-header-title {
    font-size: 1.0rem;
    font-weight: bold;
    color: #333;
    vertical-align:middle;
    display:block;
}

.grid-detail {
    font-size:.55rem !important;
    font-style: italic;
}

.k-window {
    font-family: var(--font-primary) !important;
    font-size: 1rem !important;
    background-attachment: fixed, scroll;
    background-size: cover;
    background-image: url("../images/3433814.jpg");
}

.k-selected {
    font-weight:600!important; 
}

.k-table-td {
    cursor:pointer;
}


.form-control {
    font-size: .85rem !important;
}

.field-cell {
    background-color: #eee !important;
    border: 1px solid #ccc !important;
    font-weight: 600;
    color: black;
    font-size:.85rem;
}

.value-cell {
    background-color:white;
    border: 1px solid #ccc !important;
    color: #333;
    font-size:.85rem;
}

.left-border {
    border-left: 1px solid #ccc;
}

.bottom-border {
    border-bottom: 1px solid #ccc;
}

.no-border {
    border: 0px;
}

.inline-header {
    font-size: 1rem;
    font-weight: 600;
}

input[type="text"]:disabled {
    background: #eee !important;
}

.strong {
    font-weight:600;
}

option:disabled {
    background:#eee !important;
}

.k-button-md.k-icon-button {
    padding: 0.15rem;
}

.k-grid td {
    font-family: var(--font-primary);
    border-width: 0 0 0px 1px;
    vertical-align: middle;
    font-size: .85rem !important;
}

.k-column-title {
    font-family: var(--font-primary);
    font-size: .85rem;
    font-weight: 500;
}

.k-grid th.center-me {
    text-align: center;
}

.bg-light {
    background-color:#eee;
}

.metric-value {
    font-weight:600;
}

.table {
    font-size: .85rem;
    margin:0;
}

.smaller-font {
    font-size: .75rem!important;
}

.card-body-tight {
    padding: 3px;
    margin-top:2px
}

.text-bold {
    font-weight:500;
    color: #555;
}

.center {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 50%;
}

.authorization-message {
    font-size: .75rem;
    background: var(--authorization-background);
    padding: 12px 8px 12px 8px;
    border-top: 1px dashed #eee;
    border-bottom: 1px dashed #eee;
    margin-top: 0;
}

.authorization-failure-message {
    font-size: .75rem;
    background-color: var(--authorization-failure-background);
    color: var(--authorization-failure-color);
    padding: 12px 8px 12px 8px;
    border-top: 1px dashed #004270;
    border-bottom: 1px dashed #004270;
    margin-top: 0px;
}

.button-container {
    display: flex;
    justify-content: flex-end;
}


a {
    color: #96c03d;
    text-decoration: none;
}

#blazor-error-ui {
    background: rgba(146,0,0,.75);
    color: var(--starr-light);
    top: 55px;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }

    #blazor-error-ui .reload {
        color: white !important;
        text-decoration: underline !important;
    }

.validation-message {
    color: red;
}

.bg-blue {
    background-color: #19325d;
}

.bg-starr-dark-blue {
    background-color: #19325d;
}

.starr-text-blue {
    color: #19325d;
}


.clickable {
    cursor: pointer;
}

.border-left {
    border-left: 1px solid #ccc;
}

/* Animations */
.fade-in-image {
    animation: fadeIn 3s;
}

@keyframes fadeIn {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}


.policy-active-shadow {
    box-shadow: 0 1rem 3rem #800020 !important;
}

.gray-dollar {
    color: #808080;
    vertical-align: top;
    font-size: smaller;
}

.custom-rounded {
    border-top-right-radius: 44px;
    border: 1px solid #00305e;
    padding: 1rem;
    position: relative;
    box-shadow: 4px 4px 8px 0 rgba(0, 0, 0, 0.4);
    padding-bottom: 10px;
    position: relative;
}

.card-title {
    background-color: #00305e;
    color: white;
    padding: 0.5rem;
    text-align: center;
    border-top-right-radius: 44px;
    margin: -1rem -1rem 1rem -1rem;
}

    .card-title h4 {
        margin: 0;
        color: #fff;
        padding: 5px 0;
        font-size: 29px;
        font-family: 'Ropa Sans', sans-serif;
        letter-spacing: 1px;
    }

.card-content {
    padding: 0.5rem 0;
}

.policy-desc {
    font-family: 'Open Sans', sans-serif;
    text-align: center;
    font-size: 13px;
    letter-spacing: 3px;
    color: #00305e;
    text-transform: uppercase;
    margin-top: -10px;
}

.pricing-card-title {
    font-family: 'Open Sans', sans-serif;
    font-size: 36px;
    font-weight: bold;
    text-align: center;
    margin-top: -6px;
}

.cost {
    font-family: 'OpenSans', sans-serif;
    display: inline-block;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    margin-bottom: 15px;
    font-size: 36px;
}

.blue-text {
    font-weight: normal;
    color: #00305e !important;
}

.priceTerms {
    font-family: 'Open Sans', sans-serif;
    letter-spacing: 0.5px;
    display: block;
    text-align: center;
    font-size: 14px;
    margin-top: -1rem;
}

.select-plan-container {
    display: flex;
    justify-content: center;
    align-items: center;
}

.select-plan-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #00305e;
    color: white;
    border: none;
    padding: 0.5rem 1rem;
    margin-top: 1rem;
    cursor: pointer;
    width: 200px;
    height: 50px;
    text-align: center;
    border-radius: 25px;
    box-shadow: 8px 8px 10px 0px rgba(0, 0, 0, 0.18);
    font-family: 'Open Sans', sans-serif;
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 1px;
    transition: transform 0.3s ease;
}

    .select-plan-btn .circle {
        width: 18px;
        height: 18px;
        border-radius: 50%;
        background-color: white;
        margin-right: 0.5rem;
        transition: background-color 0.3s;
    }

        .select-plan-btn .circle.selected {
            background-color: #00aeef;
        }

    .select-plan-btn:hover {
        transform: scale(1.05);
    }

        .select-plan-btn:hover .circle {
            background-color: #ccc;
        }

    .select-plan-btn.middle-btn {
        background-color: #00aeef;
    }

.check-list {
    list-style: none;
    padding-left: 0;
}

    .check-list li {
        display: flex;
        color: #00305e;
        margin-bottom: 0.5rem;
    }

        .check-list li .fa-check {
            color: #00305e;
            margin-right: 2rem;
            font-weight: bold;
            font-size: 1.0rem;
        }

.plan-selected-btn-container {
    position: absolute;
    bottom: -20px;
    left: 50%;
    transform: translateX(-50%);
    width: 200px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.plan-selected-btn {
    font-family: 'Open Sans', sans-serif;
    background-color: #00305e;
    color: white;
    width: 200px;
    padding: 15px;
    margin-top: 10px;
    text-align: center;
    border: none;
    border-radius: 25px;
    transition: width 0.3s ease;
    font-weight: 600;
}

.flex-fill {
    flex: 1 1 auto;
}

.policy-main {
    border-bottom: 40px solid #00305E;
}

.best-seller-img {
    position: absolute;
    top: -45px;
    right: -75px;
    width: calc(50% - 15px);
    height: auto;
}

.plan-body {
    margin-top: 25px;
    max-width: 250px;
    margin-left: auto;
    margin-right: auto;
    min-height: 290px;
    margin-bottom: 0px;
}

    .plan-body h5 {
        font-family: 'Open Sans', sans-serif;
        text-align: center;
        font-size: 18px;
        font-weight: 600;
        letter-spacing: 1px;
        margin-top: 1rem;
        color: #00305e;
    }

    .plan-body span {
        font-family: 'Open Sans', sans-serif;
        text-align: center;
        font-size: 16px;
        font-weight: 700;
        color: #00305e;
        display: block;
        margin-bottom: 5px;
    }

    .plan-body ul {
        padding: 0 19px;
    }

        .plan-body ul li {
            margin-bottom: 0px;
            line-height: normal;
        }

            .plan-body ul li p {
                margin: 0;
                font-size: 16px;
                color: #00305E;
                font-weight: 400;
                line-height: normal;
                position: relative;
                display: block;
                text-align: left;
                padding-left: 30px;
                margin-bottom: 10px;
                font-family: 'Open Sans', sans-serif;
            }

                .plan-body ul li p:before {
                    content: '';
                    width: 8px;
                    height: 15px;
                    border: 4px solid #00305E;
                    display: block;
                    -webkit-transform: rotate(45deg);
                    -ms-transform: rotate(45deg);
                    transform: rotate(45deg);
                    border-left: 0;
                    border-top: 0;
                    position: absolute;
                    left: 3px;
                    top: 2px;
                }

ul, li {
    list-style: none;
    margin: 0;
    padding: 0;
}

dl, ol, ul {
    margin-top: 0;
    margin-bottom: 1rem;
}

ol, ul {
    padding-left: 2rem;
}

*, ::after, ::before {
    box-sizing: border-box;
}