@import url('https://fonts.cdnfonts.com/css/lato');
:root {
    /* primary color */
    --theme-color: #2D3859;
    --theme-color-hover: #161a30;
    --theme-color-text: #7195c6;
    --theme-color-text-hover: #a3c0f3;
    /* secondary color */
    --theme-color-2: #ffffff;
    --theme-color-hover-2: #FBF4E5;
    --theme-color-text-2: #CFAF69;
    --theme-color-text-hover-2: #ffffff;
}

img {
    max-width: 100% !important;
}

.LoginBG {
    background-color: #2D3859;
}

html, body {
    background-color: white;
    width: 100vw;
    overflow-x:hidden;
    font-family: 'Lato', sans-serif;
    font-size: 1em;
}

.toggle-password {
    float: right;
    cursor: pointer;
    margin-right: 10px;
    margin-top: -60px;
    font-size: 1em;
}

.bi-eye-slash::before {
    vertical-align: -1em !important;
}

.textGold {
    color: #CFAF69 !important;
}

.textBlue {
    color: #2D3859 !important;
}

.btnjy {
    color: #2D3859;
    background-color: #CFAF69;
    border-radius: 2em;
    width: 10em;
    font-size: 1.2em;
}

.btnjy:hover {
    color: #CFAF69;
    border: 2px solid #CFAF69;
}

.loginform {
    font-size: 1.2em;
}

.loginform input[type="text"], .loginform input[type="password"] {
    height: 4em;
}

#sidebar-container {
    min-height: 100vh;
    background-color: #2D3859;
    padding: 0;
}

#sidebar-container label {
    color: #5975C8;
}

.sidebarIcons {
    width: calc(20px + 1vw);
    margin-bottom: auto;
}

.sidebarIconsExpand {
    width: 100%;
}

/* Sidebar sizes when expanded and expanded */
.sidebar-expanded {
    width: 25vw;
}

.sidebar-collapsed {
    width: 3vw;
}

.Main-expanded {
    width: 75vw;
}

.Main-collapsed {
    width: 97vw;
}

.menu-collapsed {
    vertical-align: middle;
}

.Logo-expanded {
    content: url("/images/fengshui/icons/FengShuiLogo.png");
}

.Logo-collapsed {
    content: url("/images/fengshui/icons/Menu/Mask.svg");
}

#sidebar-container a:hover, #sidebar-container a.selected {
    background-color: #202B4B;
}

#sidebar-container a.selected {
    font-weight: 700;
}

.circuit-graphic {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.circuit-graphic .circle {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    position: relative;
    background-color: #E1E1E1;
    text-align: center;
    font-size: 1.5rem;
}

.circuit-graphic .line {
    border: 1px solid #E1E1E1;
    display: flex;
    flex: 1;
}

.radio-toolbar {
    margin: 8px 0 0;
}

.radio-toolbar input[type="radio"] {
    opacity: 0;
    position: fixed;
    width: 0;
}

.radio-toolbar label {
    display: inline-block;
    background-color: #ddd;
    padding: 10px 20px;
    border-radius: 50rem !important;
    min-width: 10em;
    margin-bottom: 10px;
    margin-right: 0.5rem;
    
}

.radio-toolbar label:hover {
    background-color: #2D3859;
    color: #CFAF69;
}

.radio-toolbar input[type="radio"]:checked + label {
    background-color: #2D3859;
    color: #CFAF69;
}

.tabProgress {
    background-color: #2D3859 !important;
    color: #CFAF69 !important;
}

.tabProgressRev {
    color: #2D3859 !important;
    background-color: #CFAF69 !important;
}

.dropBtn {
    background-color: #2D3859;
    color: white;
    border-radius: 50%;
    aspect-ratio: 1 / 1;
}

.flip-card {
    background-color: transparent;
    line-height: 1.5;
}

.flip-card span {
    font-size: 0.8em;
}

.flipBtn {
    background-color: transparent;
    color: #CFAF69;
    font-size: 0.5em;
    border-radius: 1em;
    border: none;
}

.flipBtn:hover {
    border: 2px #CFAF69 solid;
    background-color: #FBF4E5;
    color: #CFAF69;
}

.flipViewBtn {
    background-color: #D9DFF2;
    color: #2D3859;
    font-size: 0.6em;
    border: none;
    border-radius: 1em;
}

.flip-card-inner {
    aspect-ratio: 1 / 1;
    border-radius: 5%;
    border: 2px solid #f1f1f1;
    position: relative;
/*    transition: transform 0.8s;*/
    /*transform-style: preserve-3d;*/
}

/* Do an horizontal flip when you move the mouse over the flip box container */
/*.flip-card:hover .flip-card-inner {
    transform: rotateY(180deg);
}*/
.actionBtn {
    display: none;
/*    transition: transform 2s;*/
}

.flip-card:hover .actionBtn {
    display: flex;
    justify-content: center;
}
/* Position the front and back side */
.flip-card-front, .flip-card-back {
    position: absolute;
    width: 100%;
    height: 100%;
    -webkit-backface-visibility: hidden; /* Safari */
    backface-visibility: hidden;
}

/* Style the front side (fallback if image is missing) */
/*.flip-card-front {
}*/

/* Style the back side */
/*.flip-card-back {
    transform: rotateY(180deg);
}*/

.flipViewBtn {
    background-color: #D9DFF2;
    color: var(--theme-color-primary);
    font-size: 0.8em;
    border: none;
    border-radius: 1em;
}

.ChartButton {
    color: #CFAF69;
/*    margin-left: 1%;
    margin-right: 1%;*/
    font-size: 0.6em;
    margin-bottom: 1%;
    width: 33%;
}

.ChartButton:hover {
    background-color: #FBF4E5;
    color: #CFAF69;
    border: 2px solid #CFAF69;
}

.bi-heart, .bi-heart-fill {
    color: #CFAF69 !important;
}

.TabButton {
    background-color: #ECECEC;
    color: white;
}

.TabButton.active, .TabButton:hover {
    background-color: #2D3859 !important;
    color: #CFAF69;
}

.floatbar {
    right: 0%;
    top: 45%;
    min-width: 200px;
    width: 200px;
    border: 1px solid;
    border-radius: 1em;
    z-index: 999;
}

.fixed-floatBtn{
    display: none;
}

@media (max-width: 1800px) {
    .floatbar {
        display: none;
    }

    .fixed-floatBtn{
        display: block
    }
}

.floatbar button:hover, .floatbar a:hover {
    border: 1px solid black;
}

.ps-TGCollapse-a {
    padding-left: 0;
    padding-right: 0;
    justify-content: center
}

.sidebar-expanded a .ps-expand {
    padding-left: 0.25rem;
}

.sidebar-expanded div .btn {
    padding-left: 0;
    padding-right: 0;
}

.w-collapse-icon {
    width: 100%;
    padding: 0.25vw
}

.position-fixed.sidebar-expanded {
    width: calc(25vw - 1px);
}

.position-fixed.sidebar-collapsed {
    width: calc(3vw - 1px);
}

label.menu-collapsed {
    font-size: large;
    font-weight: bold;
}

.fw-600 {
    font-weight: 600;
}

.flip-card-fs {
    font-size: 16px;
}

.sidebar-m a .menu-collapsed {
    width: 85% !important;
}

/* new css start */
.max-w-\[500px\] {
    max-width: 500px;
}

.max-w-\[800px\] {
    max-width: 800px;
}

.max-w-\[1000px\] {
    max-width: 1000px;
}

.btn-theme {
    background-color: var(--theme-color) !important;
    color: white !important;
    font-weight: 600;
    transition: 0.25s;
}

    .btn-theme:hover {
        background-color: var(--theme-color-hover) !important;
        color: var(--theme-color-text-2) !important;
    }

    .btn-theme.active {
        background-color: #5880b3 !important;
        color: white !important;
    }

.btn-theme-2 {
    background-color: var(--theme-color-2);
    color: var(--theme-color-text-2);
    font-weight: 600;
    transition: 0.25s;
}

    .btn-theme-2:hover {
        background-color: var(--theme-color-hover-2);
        color: black;
        border: 1px solid var(--theme-color-text-2);
    }

    .btn-theme-2.active {
        background-color: #5880b3;
        color: white;
    }

.icon-size {
    width: 20px;
    margin-right: 0.25rem;
}

.natal-chart-table {
    font-size: 0.8em;
    line-height: 1.1;
    width: 100%;
}

.select-chart-radio .form-check-input:checked {
    background: var(--theme-color-text-2);
    border: var(--theme-color-text-2);
}

.setting-btn i {
    width: 16px;
    height: 16px;
}

.image-frame {
    border: 3px solid var(--theme-color);
}

.fw-semibold {
    font-weight: 600;
}

.feng-shui-element-icon img {
    height: 50px;
    width: 50px;
}

.floating-bar-icon {
    width: 20px;
    text-align: center;
}

.select-on-list:hover {
    background: var(--theme-color-hover);
    color: var(--theme-color-text-2);
}

.table-personal-sector {
    font-size: 0.7em;
    --bs-table-color: unset;
    --bs-table-bg: unset;
}

.drawing-button:hover {
    background: var(--theme-color-hover);
}

.drawing-button.active {
    background: #5880b3;
}

.btn-min-width {
    min-width: 100px;
}

.fake-hide {
    position: absolute;
    top: -5000px;
    left: -5000px;
    max-height: 100%;
}

.profile-container {
    aspect-ratio: 1/1;
    border: 2px solid #f1f1f1;
}

.action-btn {
    max-height: 0;
    overflow: hidden;
    transition: 0.5s;
}

.profile-container:hover .action-btn {
    overflow: unset;
    max-height: 200px;
}


.lblbig {
    /* font-size: clamp(7px, 3.5vw, 2rem) !important; */
    font-size: 2vw;
}

.lblmid {
    /* font-size: clamp(5px, 2.5vw, 1.25rem) !important; */
    font-size: 1vw;
}

.lblsmall {
    /* font-size: clamp(3px, 2vw, 1rem) !important; */
    font-size: 0.8vw;
}

.lblbigalt {
    /* font-size: clamp(7px, 3.5vw, 2rem) !important; */
    font-size: 1.8vw;
}

.lblmidalt {
    /* font-size: clamp(5px, 2.5vw, 1.25rem) !important; */
    font-size: 0.8vw;
}

.lblsmallalt {
    /* font-size: clamp(3px, 2vw, 1rem) !important; */
    font-size: 0.6vw;
}

.grid-cell span {
    line-height: 1.1;
}

.rounddiv div {
    line-height: 1.1;
}

@media(max-width: 576px) {
    html {
        font-size: 14px;
    }

    .natal-chart-table {
        width: 180%;
    }

    .personal-sectors-responsive {
        width: 150%;
    }

    .responsive-text-size {
        font-size: 12px;
    }

    .icon-size {
        width: 15px;
    }
}
/* new css end */

@media(max-width: 768px) {
    .rounddiv div {
        line-height: 0.8;
    }
}

@media(max-width: 992px) {
    .flip-card-fs {
        line-height:1em
    }
}

@media (min-width: 700px) and (max-width: 767px){
    .flip-card-back {
        font-size: calc(12px + 1vw)
    }

    .flip-card-back h5 {
        font-size: calc(1.25rem + 1vw)
    }

    .flip-card div:nth-child(2) i {
        font-size: calc(1.375rem + 1.5vw) !important;
    }
}

@media (min-width: 993px) and (max-width: 1199px), (min-width: 1600px) {
    .flip-card-back {
        font-size: calc(12px + 0.7vw);
    }

    .flip-card-back h5 {
        font-size: calc(1.25rem + 0.7vw)
    }

    .flip-card div:nth-child(2) i {
        font-size: calc(1.375rem + 1.5vw) !important;
    }
}

.modal {
    background: rgba(0, 0, 0, 0.5);
}

.modal-backdrop {
    display: none;
}