@font-face {
    font-family: "LearnText";
    src: url("font-regular.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: "LearnText";
    src: url("font-medium.ttf") format("truetype");
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: "LearnText";
    src: url("font-bold.ttf") format("truetype");
    font-weight: 700;
    font-style: normal;
}

@import url("https://fonts.googleapis.com/css?family=DM+Sans:300,400,500,600,700");
@import url("https://fonts.googleapis.com/css?family=Montserrat:300,400,500,600,700");

body {
    font-family: "DM Sans", sans-serif !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "Montserrat", sans-serif !important;
}

.fw-bold {
    font-weight: 700 !important;
}

.fw-medium {
    font-weight: 500 !important;
}

.fw-normal {
    font-weight: 400 !important;
}

.fs-10 {
    font-size: 10px !important;
}

.fs-11 {
    font-size: 11px !important;
}

.fs-12 {
    font-size: 12px !important;
}

.fs-13 {
    font-size: 13px !important;
}

.fs-14 {
    font-size: 14px !important;
}

.fs-15 {
    font-size: 15px !important;
}

.fs-16 {
    font-size: 16px !important;
}

.fs-17 {
    font-size: 17px !important;
}

.fs-18 {
    font-size: 18px !important;
}

.fs-19 {
    font-size: 19px !important;
}

.fs-20 {
    font-size: 20px !important;
}

.fs-24 {
    font-size: 24px !important;
}
.fs-25 {
    font-size: 25px !important;
}

.fs-30 {
    font-size: 30px !important;
}

.fs-35 {
    font-size: 35px !important;
}

.fs-40 {
    font-size: 40px !important;
}

.fs-45 {
    font-size: 45px !important;
}

.app-sidebar-menu-secondary.menu .menu-link.active {
    transition: color 0.2s ease;
    background-color: #f6e8ef;
    color: var(--bs-primary) !important;
}

.app-sidebar-menu-secondary.menu .menu-link.active .menu-title {
    color: var(--bs-primary);
}

.app-sidebar-menu-secondary.menu .menu-link.active .menu-icon,
.app-sidebar-menu-secondary.menu .menu-link.active .menu-icon .svg-icon,
.app-sidebar-menu-secondary.menu .menu-link.active .menu-icon i {
    color: var(--bs-primary);
}

tr td,
tr th {
    white-space: nowrap !important;
}

.ql-container {
    height: 120px !important;
}

.pointer {
    cursor: pointer;
}

.round {
    border-radius: 15px;
}

/* Purple Gradient Color System */
.bg-primary {
    background: linear-gradient(to right, #7e22ce, #9333ea) !important;
}

.bg-primary:hover {
    background: linear-gradient(to right, #6b21a8, #7e22ce) !important;
}

.text-primary {
    background: linear-gradient(to right, #7e22ce, #9333ea);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.text-primary-2 {
    color: #7e22ce;
}

.btn-primary {
    background: linear-gradient(to right, #7e22ce, #9333ea) !important;
    color: white !important;
    border: none;
    transition: all 0.3s ease;
}

.btn-primary:hover {
    background: linear-gradient(to right, #6b21a8, #7e22ce) !important;
    color: white !important;
}

/* Dashboard Styles */
.balance-card {
    border-radius: 20px;
    padding: 18px;
    color: white;
    box-shadow: 0 4px 12px rgba(126, 34, 206, 0.15);
    position: relative;
    overflow: hidden;
}

.balance-toggle {
    background: rgba(255, 255, 255, 0.2);
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background 0.2s;
}

.bg-pill {
    background: var(--bs-primary-light);
    display: flex;
    padding: 3px 8px;
    border-radius: 15px;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.bal-pill {
    background: rgba(255, 255, 255, 0.2);
    display: flex;
    padding: 3px 8px;
    border-radius: 15px;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.balance-text {
    font-size: 22px;
}

.balance-toggle:hover {
    background: rgba(255, 255, 255, 0.3);
}

.action-btn-white {
    background: white !important;
    color: #1e1e1e !important;
    border: none;
    border-radius: 50px;
    padding: 10px 16px;
    font-weight: 500;
    font-size: 13px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    transition: transform 0.2s;
}

.action-btn-white:hover {
    transform: translateY(-1px);
}

.action-btn-transfer {
    background: rgba(255, 255, 255, 0.2) !important;
    color: white !important;
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 50px;
    padding: 10px 16px;
    font-weight: 500;
    font-size: 13px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    backdrop-filter: blur(4px);
    transition: background 0.2s;
}

.action-btn-transfer:hover {
    background: rgba(255, 255, 255, 0.25) !important;
    color: white !important;
}

.quick-action-card {
    background: var(--bs-body-bg);
    border-radius: 15px;
    padding: 10px 5px;
    text-align: center;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.icon-circle {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    margin-bottom: 8px;
    font-size: 16px;
}

.bg-purple-light {
    background: #f3e8ff !important;
    color: #9333ea !important;
}
.bg-blue-light {
    background: #dbeafe !important;
    color: #3b82f6 !important;
}
.bg-orange-light {
    background: #ffedd5 !important;
    color: #f97316 !important;
}
.bg-green-light {
    background: #dcfce7 !important;
    color: #22c55e !important;
}
.bg-cyan-light {
    background: #cffafe !important;
    color: #06b6d4 !important;
}
.bg-red-light {
    background: #fee2e2 !important;
    color: #ef4444 !important;
}
.bg-pink-light {
    background: #fce7f3 !important;
    color: #ec4899 !important;
}
.bg-indigo-light {
    background: #e0e7ff !important;
    color: #6366f1 !important;
}
.bg-teal-light {
    background: #ccfbf1 !important;
    color: #14b8a6 !important;
}

.quick-action-label {
    font-size: 11px;
    font-weight: 500;
    coslor: #504c4c;
    margin-top: 2px;
    margin-bottom: 0px !important;
    white-space: nowrap;
}

.fs-8 {
    font-size: 9px !important;
}

.fs-9 {
    font-size: 8px !important;
}

/* Mobile Footer Styles */
.mobile-footer a {
    color: inherit;
}

.mobile-footer a:hover {
    color: inherit;
}

/* Profile Switch Modal */
.profile-card {
    transition: all 0.2s ease;
}

.profile-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.08);
}

/* Transaction List Styles */
.transaction-list .card {
    transition: all 0.2s ease;
}

.transaction-list .card:hover {
    transform: translateY(-2px);
}

.transaction-list .card:active {
    transform: translateY(0);
}

.modal {
    backdrop-filter: blur(5px);
}

.modal-content {
    border-radius: 15px;
}

/* Network Card Styles for VTU Pages */
.network-card {  
    border-radius: 12px;
    padding: 12px 8px;
    text-align: center;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
}

.network-card:hover { 
    transform: translateY(-2px);
}

.network-card.active {
    background: var(--bs-primary-light);
    border: 2px solid var(--bs-primary) !important;  
}

.network-card span {
    font-size: 12px;
    font-weight: 500;
    color: #495057;
}

.network-card.active span {
    color: var(--bs-primary);
    font-weight: 600;
}


.form-control{
    border-radius: 10px;
}
.btn-primary{
    border-radius: 50px;
}


.dropdown-menu-dark {
    --bs-dropdown-color: var(--bs-body-color) !important;
    --bs-dropdown-bg: var(--bs-body-bg);
}

.choices[data-type*=select-one] .choices__inner {
    padding-bottom: 7.5px;
    border-radius: 10px;
    border: none;
}

.choices__list--dropdown, .choices__list[aria-expanded] { 
    border: 1px solid #e8e6e6 !important; 
    border-radius: 10px !important;
}

.btn>i { 
    padding-right: unset; 
}

.bg-white {
    --bs-bg-rgb-color: var(--bs-white-bg-rgb);
    background-color: var(--bs-body-bg) !important;
}

.text-dark, .text-white {
    color: var(--bs-body-color) !important;
}

.text-black{
    color: #000;
}

.text-white-2{
    color: #fff;
}

.card { 
    border-radius: 15px !important;
}