@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');


body {font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal;

  }
.layout-wrapper:not(.layout-horizontal) .menu-vertical .menu-sub > .menu-item > .menu-link::before {

    border: none !important;
  }
  .layout-wrapper{
    background-color: rgb(242, 245, 252) !important;
}
.navbar  {
    box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
    background-color: white ;
}
.sidebar{
    box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
    background-color: white !important;
}


.is-invalid {
    border-color: red !important;
}

.is-invalid:focus {
    border-color: #dc3545;
    /* Focus state */
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
    /* Optional: add a shadow for focus */
}

.info-item {
    display: flex;
    flex-wrap: wrap;
}
.info-item h6 {
    margin-bottom: 2px;
}
.info-item span {
    min-width: 0;
    word-break: break-word;
    overflow-wrap: anywhere;
}
.user-initials {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: var(--rt-orange);
    color: #fff;
    font-weight: 600;
    font-size: 14px;
    flex-shrink: 0;
}
.layout-navbar{
    box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
    background-color: white ;
    margin-bottom: 10px;
    padding: 20px !important;
}
.content-container{
    box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
    background-color:  #F4F4F4;
    padding: 2rem 4rem 2rem 4rem;

}
.layout-navbar.navbar-detached {
    transition: padding 0.2sease, background-color 0.18sease;
    padding: 0;
    width: calc(100% - 1.5rem* 2);
   border-radius: 2px !important;
}

.btn-primary {
    background-color: var(--rt-orange);
    border-color: var(--rt-orange);
    color: white;
    gap: 5px;
    border-radius: 100px;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary:visited {
    background-color: var(--rt-orange) !important;
    border-color: var(--rt-orange) !important;
    box-shadow: none !important; /* Removes any Bootstrap hover/focus effects */
    color: white;
}
.text-primary{
    color: var(--rt-orange) !important;

}
.form-control:focus, .form-select:focus
.navbar{
    border-color: var(--rt-orange) !important;

}
.input-group:not(.input-group-floating):focus-within .input-group-text {
    border-color: var(--rt-orange) !important;
}
.input-group-text {
    border-color: var(--rt-orange) !important;
}
a{
    color: var(--rt-orange);
}
.container-xxl{
    max-width: 1600px;
}

/* .bg-menu-theme .menu-item.active > .menu-link:not(.menu-toggle){
    background-color: var(--rt-orange) !important;
    color: white;
} */
.menu-vertical .menu-inner .menu-item.active > .menu-link:not(.menu-toggle){
    box-shadow: none !important;
}
.bg-menu-theme .menu-item.active > .menu-link:not(.menu-toggle) {
    background: none ;
}
.bg-menu-theme .menu-item.active:not(.open) > .menu-link:not(.menu-toggle){
    color: var(--rt-orange) !important;

}
.card{
    box-shadow: none;
}
/* Action table icons — base (circular, light gray bg jaisa Figma mein) */
.action-table {
    width: 1%;
    min-width: 180px;                /* 4 icons × 20px + gaps + padding */
    white-space: nowrap !important;
    overflow-x: auto !important;
}

.action-table .d-flex {
    justify-content: flex-start;
    flex-wrap: nowrap !important;
    align-items: center;
    gap: 4px !important;
}

/* Form block-level hai — inline banao warna apni line le leta hai */
.action-table form {
    display: inline-flex !important;
    margin: 0;
    flex-shrink: 0;
}

.action-table a,
.action-table button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;                  /* ⚠️ squeeze hone pe icon chhota na ho */
    padding: 0 !important;
    border: 0;
    background: transparent;
    line-height: 0;
    transition: background .2s ease;
}

/* ⚠️ Bootstrap .dropdown-item ka display:block + width:100% kill karo.
   Class ka naam har page pe alag hai (delete-btn / delete-applicant-btn /
   convert-to-tenant-btn), isliye .dropdown-item pe hi target kiya. */
.action-table .dropdown-item,
.action-table .delete-btn,
.action-table button {
    display: inline-flex !important;
    width: auto !important;
    padding: 0 !important;
    background: transparent !important;
    clear: none !important;
    white-space: nowrap;
}

/* Remix icons (<i class="ri-...">) ke liye bhi size lock */
.action-table i {
    font-size: 18px;
    line-height: 1;
    flex-shrink: 0;
}
.action-table a svg,
.action-table button svg {
    /* width: 16px; */
    /* height: 16px; */
    transition: fill .2s ease, stroke .2s ease;
}

/* Base icon color — gray/dark */
.action-table a svg path,
.action-table button svg path {
    fill: #6B7280;
    transition: fill .2s ease;
}

/* Hover — orange circle, white icon */
.action-table a:hover,
.action-table button:hover {
    background: transparent !important;

}
.action-table a:hover svg path,
.action-table button:hover svg path {
    fill: var(--rt-orange) !important;
}

.phases-circle {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
}
.horizone-line{
    border-bottom: 1px solid #c9cbd1;
    margin-bottom: 40px;
}
.input-group{
     height: 40px !important;

}
.form-control:focus,
.form-select:focus {
  border-color: var(--rt-orange) !important;
}
.btn{
    height: 45px;
    font-size: 18px;
    gap: 5px;
    border-radius: 100px;
    font-weight: 400;
    padding: 20px;
}
.form-control{
    height: 45px;
}
.form-select{
    height: 45px;
}

.table-header .table-header-search
{
    width: 220px;
}
.customize-table tbody tr{
    height: 65px;
}
.right-sidebar{
    width: 40% !important;
    border-radius: 20px 0px 0px 20px;
}
.right-sidebar .offcanvas-header {
    border-bottom: 1px solid #c9cbd1;

}
.right-sidebar .save-btn{
    min-width: 100px;
    height: 33px;
}
.right-sidebar .close-btn{
    width: 30px ;
    height: 30px;
    border-radius: 50%;
    border: 1px solid black;
    color: black;
    background: none;
}
.right-sidebar .border-line,
.border-line {
    border-bottom: 1px solid #c9cbd1;
}
.input-icon{
    border: none !important;

}
.multi-tabs{
    margin-top: 50px;
}
.multi-tabs .nav-link {
    color: #c0bec5;

}
.multi-tabs .nav-tabs .nav-link.active{
   color: black ;
}
.menu-vertical .menu-item .menu-link{
    color: #a7b2c6;
}
.step-indicator {
margin-top: 40px;

}
    .step-indicator div {
        display: flex;
        align-items: center;
        margin-bottom: 10px;
        cursor: pointer;
    }


.select2-dropdown-scroll .select2-results__options {
    max-height: 200px;
    overflow-y: auto;
}



.step-indicator .step-header .indicator-line {
    width: 75px;
    height: 2px;
    background: #E4E8EE;
}
.step-indicator .active .indicator-line {
    width: 75px;
    height: 2px;
    background: var(--rt-orange);
}

    .step-indicator .circle {
        display: inline-block;
        width: 30px;
        height: 30px;
        border-radius: 50%;
        /* background: ; */
        color: var(--rt-orange);
        border: 1px solid var(--rt-orange);
        line-height: 30px;
        text-align: center;
        font-weight: bold;
        position: relative;
        z-index: 1;
        margin-right: 7px;
    }

    .step-indicator .active .circle {
        background: var(--rt-orange);
        color: white;
    }
    .step-indicator .active  {
       font-weight: 800;
       color: black;
    }
    .upload-file{
        background-color: #fafafa;
        height: 400px;
        border: 2px dotted #ada8a8;
        cursor: pointer;
    }
    .user-profile {
        background-color: #fafafa;
        border-radius: 10px;
    }

    .profile-img {
        width: 150px;
        text-align: center;
    }

    .profile-img img {
        width: 100px;
        height: 100px;
        border-radius: 50%;
        object-fit: cover;
    }

    .profile-contact h4 {
        color: #333;
    }

    .user-profile ul {
        padding: 0;
    }

    .user-profile ul li {
        padding-bottom: 8px;
    }

    .user-profile ul li a {
        color: #292e3b;
        text-decoration: none;
        font-size: 14px;
        display: flex;
        align-items: center;
    }

    .user-profile ul li a i {
        margin-right: 8px;
        font-size: 16px;
    }
    .property-detail ul li{
        font-size: 12px;
    }
    .property-detail ,.property-profile-detail{
        min-height: 264px;
    }
    .activity-summary .card{
        background-color: #fafafa;
        border-radius: 10px;

    }
    .summary-card{
       border: 1px solid #e4e8ee;
    }
    .summary-card .card-body{
       height: 200px;
    }
    .summary-card .card-header{
       background-color: #e4e8ee;
    }
    .summary-card .summary-btn{
        height: 30px;
        padding: 9px;
        background-color: white;
    }
    .viewing-card{
        border: 1px solid #e4e8ee;
        height: 350px;
    }
    .table tbody tr td {
        max-width: 100px; /* adjust width as per your layout */
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        color: #7A7A7A;
        font-weight: 400;
        font-size: 16px;

    }

    /* Navbar Toggle Icon Animation */
    #menuIcon, #closeIcon {
        transition: all 0.3s ease-in-out;
        display: inline-block;
    }

    .navbar-toggler {
        border: none;
        padding: 0.25rem 0.5rem;
    }

    .navbar-toggler:focus {
        box-shadow: none;
    }

    .navbar-toggler-icon {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    /* Smooth rotation animation */
    #menuIcon, #closeIcon {
        transform-origin: center;
    }

    .accordion .accordion-item{
        border: none;
        box-shadow: none;
    }
    .accordion .accordion-item.active{
        border: none;
        box-shadow: none;
    }
    .accordion .accordion-body{
        border: 1px solid #EEF1F6;
        padding: 20px;
    }
    .accordion .accordion-header{
        background-color: #EEF1F6;
    }
    .accordion .accordion-header .accordion-button{
        background-color: #EEF1F6;
    }
    .property-view-tab ul li{
        margin-bottom: 10px;
    }

    #workorderTableWrapper td:nth-child(9) {
        max-width: none !important;
        overflow: visible !important;
        text-overflow: clip !important;
        white-space: nowrap !important;
    }

    #workorderTableWrapper td:nth-child(9) span {
        white-space: nowrap !important;
        display: inline-block !important;
        overflow: visible !important;
    }
     .swal-on-top {
        z-index: 99999 !important;
    }
    .swal2-container {
        z-index: 99999 !important;
    }


    /* summernote css */

   /* Summernote modal — BS5 fix */
.note-modal .note-modal-content {
    border-radius: 6px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.25);
}
.note-modal .close,
.note-modal .btn-close {
    opacity: 0.6;
    font-size: 1.3rem;
    line-height: 1;
    cursor: pointer;
    background: transparent;
    border: 1px solid;
    border-radius: 4px;
    margin-right: 1rem;
}
.note-modal .close:hover,
.note-modal .btn-close:hover {
    opacity: 1;
}
.note-modal .note-modal-footer {
    height: auto;
    padding: 10px 20px;
    text-align: right;
}
.note-modal .note-btn {
    padding: 6px 12px;
}

/* Video remove popover (fallback) */
.sn-video-popover {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 4px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

/* ✅ Video wrapper ko responsive + center karo (corner stuck fix) */
.note-editable .note-video-clip {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: 640px;
    margin: 12px auto !important;     /* center */
    float: none !important;
    left: auto !important;
    top: auto !important;
    aspect-ratio: 16 / 9;
    background: #000;
    border-radius: 6px;
    overflow: hidden;
}

/* iframe wrapper ko poora bhar de */
.note-editable .note-video-clip iframe,
.note-editable .note-video-clip video {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    border: 0;
    pointer-events: none;             /* click wrapper tak pahunche */
}

/* Selected highlight */
.note-editable .note-video-clip.sn-video-selected {
    outline: 3px solid #0d6efd;
    outline-offset: 2px;
}

/* Remove button overlay (hover ya selected pe dikhe) */
.note-editable .note-video-clip .sn-video-remove-btn {
    position: absolute;
    top: 6px;
    right: 6px;
    z-index: 5;
    display: none;
    pointer-events: auto;
}
.note-editable .note-video-clip:hover .sn-video-remove-btn,
.note-editable .note-video-clip.sn-video-selected .sn-video-remove-btn {
    display: inline-flex;
}

/* Inserted images bhi corner mein na chipke */
.note-editable img {
    position: static !important;
    float: none !important;
    max-width: 100%;
    height: auto;
}

/* ✅ Style dropdown (Normal/Quote/Code/Header) — sizing fix */
.note-editor .note-dropdown-menu,
.note-dropdown-menu {
    max-height: 300px;
    overflow-y: auto;
    padding: 4px 0;
    min-width: 180px;
}

/* Dropdown ke andar heading tags ka size normal karo (huge font fix) */
.note-dropdown-menu h1,
.note-dropdown-menu h2,
.note-dropdown-menu h3,
.note-dropdown-menu h4,
.note-dropdown-menu h5,
.note-dropdown-menu h6,
.note-dropdown-menu p,
.note-dropdown-menu blockquote,
.note-dropdown-menu pre {
    font-size: 14px !important;
    line-height: 1.4 !important;
    font-weight: 500 !important;
    margin: 0 !important;
    padding: 6px 12px !important;
    color: #333 !important;
    background: transparent !important;
    border: 0 !important;
    white-space: nowrap;
}

/* Har style option ek clickable row jaisa */
.note-dropdown-menu > li,
.note-dropdown-menu a {
    display: block;
    padding: 0 !important;
    cursor: pointer;
}

.note-dropdown-menu > li:hover,
.note-dropdown-menu a:hover {
    background-color: #f5f5f5;
}

/* Quote/Code ka thoda distinct look (optional) */
.note-dropdown-menu blockquote {
    border-left: 3px solid #ddd !important;
    font-style: italic;
}
.note-dropdown-menu pre {
    font-family: monospace !important;
    background: #f8f9fa !important;
}

/* Dropdown menu jab body mein render ho (dialogsInBody) — z-index upar */
.note-dropdown-menu {
    z-index: 100000 !important;
}

/* Backdrop sirf tab dikhe jab modal khula ho — stuck overlay rokne ke liye */

    /* summernote css */

    /* ═══════════════════════════════════════════════════════
       FullCalendar Mobile Responsive
       ═══════════════════════════════════════════════════════ */

    #calendar {
        height: 700px;
    }

    /* ─── Mobile (< 768px) ─── */
    @media (max-width: 767.98px) {
        #calendar {
            height: 500px;
            font-size: 0.75rem;
        }


        /* Header toolbar — stack vertically */
        .fc-header-toolbar {
            flex-direction: column;
            gap: 0.5rem;
            margin-bottom: 1rem !important;
        }

        .fc-toolbar-chunk {
            display: flex;
            justify-content: center;
            width: 100%;
        }

        /* Title smaller on mobile */
        .fc-toolbar-title {
            font-size: 1rem !important;
            text-align: center;
        }

        /* Buttons smaller */
        .fc .fc-button {
            padding: 0.25rem 0.5rem;
            font-size: 0.75rem;
        }

        /* Day cells — adjust padding */
        .fc-daygrid-day-frame {
            min-height: 50px;
        }

        /* Day numbers smaller */
        .fc-daygrid-day-number {
            font-size: 0.75rem;
            padding: 2px;
        }

        /* Event text — truncate on small screens */
        .fc-event-title,
        .fc-event-time {
            font-size: 0.65rem;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        /* Day headers (Sun, Mon...) */
        .fc-col-header-cell {
            font-size: 0.7rem;
            padding: 4px 2px;
        }

        /* Time grid (week/day view) */
        .fc-timegrid-slot {
            height: 1.5rem !important;
        }

        .fc-timegrid-slot-label {
            font-size: 0.65rem;
        }
    }

    /* ─── Extra small (< 480px) ─── */
    @media (max-width: 479.98px) {
        #calendar {
            height: 450px;
        }

        /* Hide event title on very small screens, show only dot */
        .fc-daygrid-event-dot {
            border-width: 4px;
        }

        /* "more" link smaller */
        .fc-daygrid-more-link {
            font-size: 0.65rem;
        }
    }

    /* ─── Tablet (768px - 1024px) ─── */
    @media (min-width: 768px) and (max-width: 1024px) {
        #calendar {
            height: 600px;
        }

    }

@media only screen and (min-width: 768px) {
    .title-input-dropdown{
        width:25%;
    }
    .long-label{
        font-size: 12px;
    }

}
@media only screen and (min-width: 1050px) and (max-width: 1680px) {
    .property-view-tab ul li button{
        padding: 0px 12px !important;
    }

}
@media only screen and (max-width: 1300px) {
    .property-profile-detail {
        flex-wrap: wrap !important;

    }

}
@media only screen and (min-width: 1200px) {
    .layout-page{ padding-left: var(--rt-sidebar-width) !important; }
}
@media only screen and (max-width: 1199.98px) {
    .layout-page{ padding-left: 0 !important; }
}
@media only screen and (max-width: 1200px) {

}
@media only screen and (max-width: 991px) {
    /* .content-container{
        margin-top: 100px !important;
    } */
    .navbar .navbar-search{
        width: 70%;

    }
    .navbar .user-dropdown{
        width: 150px;

    }
    .navbar .logout{
        width: 150px;
        text-align: center;

    }
    /* .navbar{
        position: fixed;
        width: 100%;
    } */
    .right-sidebar{
        width: 70% !important;
    }

}
@media only screen and (max-width: 768px) {


}
@media only screen and (max-width: 576px) {
    .right-sidebar{
        width: 90% !important;
    }
    .profile-img {
        width: 100%;
        text-align: left;
    }
    .profile-contact {
        width: 100%;
        margin-top: 20px;
    }
    .navbar .navbar-brand h3{
        font-size: 14px;
    }


}



/* newly imnplemented css */
/* ═══════════════════════════════════════
   NEW SIDEBAR + TOPBAR (rt- prefixed)
   ═══════════════════════════════════════ */
:root{
  --rt-sidebar-width: 300px;
  --rt-sidebar-bg: linear-gradient(180deg, #222 64.42%, #505050 100%);
  --rt-text: #e8e8ea;
  --rt-text-muted: #a8d8d93;
  --rt-topbar-h: 76px;
}

.rt-page{ margin-left: var(--rt-sidebar-width); transition: margin .3s ease; }

/* ---------- SIDEBAR ---------- */
.rt-sidebar{
  position: fixed; top:0; left:0;
  width: var(--rt-sidebar-width); height: 100vh;
  background: var(--rt-sidebar-bg);
  display: flex; flex-direction: column; z-index: 1040;
  transition: transform .3s ease;
}
.rt-brand-logo--mobile{ display:none; }

.rt-sidebar__brand{
  background:#F4F4F4;
  width: calc(100% + 35px);
  height: 96px;
  margin: 0;
  padding: 0 0 18px 0;          /* neeche thoda gap → cut se logo bache, baqi center */
  border-radius: 0rem 0rem 2rem 0rem;
  display:flex;
  align-items:center;           /* vertical center */
  justify-content:center;       /* horizontal center */
  flex-shrink:0;
  position: relative; z-index: 5;
  clip-path: polygon(0 0, 100% 0, 100% 80%, 0 100%);
  filter: drop-shadow(0 4px 5px rgba(255, 255, 255, 0.22));
}
.rt-brand-logo{ width:160px; max-width:none; height:auto; object-fit:contain; }

.rt-sidebar__nav{ flex:1 1 auto; min-height:0; overflow-y:auto; overflow-x:hidden; padding:0px; }
.rt-sidebar__nav::-webkit-scrollbar{ width:6px; }
.rt-sidebar__nav::-webkit-scrollbar-thumb{ background:#3a3a3d; border-radius:3px; }


.rt-menu{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:5px; }
.rt-menu-item{ margin:0; }

.rt-menu-link{
  display:flex; align-items:center; gap:12px;
  padding:11px 14px 11px 26px;   /* left padding 14 → 26, dot ke liye jagah */
  border-radius:0px;
  color:var(--rt-text); text-decoration:none;
  font-size:18px; font-weight:500; position:relative; cursor:pointer;
  transition: background .15s ease, color .15s ease;
}
.rt-menu-link:hover{ background:rgba(255,255,255,.06); color:#fff; }

.rt-menu-icon{ width:20px; height:20px; flex-shrink:0; object-fit:contain; }

/* Default: saare PNG icons white (inactive) — ye PEHLE */
/* ───── Sidebar icons (koi bhi format: svg/png/jpg/webp) — mask se color ─────
   JS har img ka src --rt-icon-url mein daalta hai. Mask shape leta hai,
   color background-color se aata hai. Format ki koi parwah nahi. */

/* ───── Sidebar icons — mask se color (koi bhi format), JS-independent ─────
   Mask src CSS se aata hai (inline style se, JS nahi) → koi blink nahi. */

/* ───── Inline SVG icons — fill se crisp color (no blur) ───── */

/* img (jab tak SVG inline na ho) aur inline svg dono ke liye size */
img.rt-menu-icon,
svg.rt-menu-icon-svg{
  width:20px; height:20px; flex-shrink:0;
}

/* img fallback (SVG inline hone se pehle ya non-svg) — white */
img.rt-menu-icon{
  filter: brightness(0) invert(1);   /* inactive: white */
}
.rt-menu-item.active > .rt-menu-link img.rt-menu-icon{
  filter: none;
}

/* Inline SVG — fill currentColor se aata hai */
svg.rt-menu-icon-svg{
  fill: #ffffff;            /* inactive: white (solid, crisp) */
}
svg.rt-menu-icon-svg path,
svg.rt-menu-icon-svg circle,
svg.rt-menu-icon-svg rect,
svg.rt-menu-icon-svg polygon,
svg.rt-menu-icon-svg g{
  fill: inherit !important;
}

/* Active SVG icon — selected theme color */
.rt-menu-item.active > .rt-menu-link svg.rt-menu-icon-svg{
  fill: var(--rt-orange) !important;
}
/* Blink fix: img.rt-theme-svg ko inline hone tak chhupao
   (warna SVG ka hardcoded orange flash hota hai) */
img.rt-theme-svg{
  visibility: hidden;
}

.rt-icon-btn svg{
  width:20px; height:20px;
  fill: var(--rt-orange);
}
.rt-icon-btn svg path,
.rt-icon-btn svg circle,
.rt-icon-btn svg rect,
.rt-icon-btn svg polygon,
.rt-icon-btn svg g{
  fill: var(--rt-orange) !important;
}

svg.rt-theme-svg-inline{
  visibility: visible;
}

svg.rt-theme-svg-inline{
  fill: var(--rt-orange) !important;
}
svg.rt-theme-svg-inline path,
svg.rt-theme-svg-inline circle,
svg.rt-theme-svg-inline rect,
svg.rt-theme-svg-inline polygon,
svg.rt-theme-svg-inline g{
  fill: var(--rt-orange) !important;
}

.rt-menu-item.active > .rt-menu-link svg.rt-menu-icon-svg path,
.rt-menu-item.active > .rt-menu-link svg.rt-menu-icon-svg circle,
.rt-menu-item.active > .rt-menu-link svg.rt-menu-icon-svg rect,
.rt-menu-item.active > .rt-menu-link svg.rt-menu-icon-svg polygon,
.rt-menu-item.active > .rt-menu-link svg.rt-menu-icon-svg g{
  fill: var(--rt-orange) !important;
}

/* Active item ka font-icon (ri-) — selected color */
.rt-menu-item.active > .rt-menu-link i.rt-menu-icon{
  color: var(--rt-orange) !important;
}

i.rt-menu-icon{ font-size:19px; line-height:1; }
.rt-menu-text{ flex:1; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

.rt-menu-item.active > .rt-menu-link{
  background:#fff; color:var(--rt-orange);
}

.rt-menu-item.active > .rt-menu-link::before{
  content:"";
  position:absolute;
  left:6px;                   /* link ke andar, left edge pe */
  top:50%;
  transform:translateY(-50%);
  width:10px; height:10px;
  border-radius:50%;
  background:var(--rt-orange);
}


.rt-menu-toggle::after{
  content:""; width:7px; height:7px;
  border-right:2px solid currentColor; border-bottom:2px solid currentColor;
  transform:rotate(-45deg); margin-left:auto; opacity:.55;
  transition:transform .2s ease;
}
.rt-menu-item.open > .rt-menu-toggle::after{ transform:rotate(45deg); }

.rt-menu-sub{
  list-style:none; margin:2px 0 4px; padding:0 0 0 30px;
  max-height:0; overflow:hidden; transition:max-height .28s ease;
}
.rt-menu-item.open > .rt-menu-sub{ max-height:600px; }
.rt-menu-sub .rt-menu-link{
  padding:9px 12px; font-size:13.5px; font-weight:400; color:var(--rt-text-muted);
}
.rt-menu-sub .rt-menu-link:hover{ color:#fff; background:rgba(255,255,255,.05); }
.rt-menu-sub .rt-menu-item.active > .rt-menu-link{
  color:var(--rt-orange); background:transparent; box-shadow:none;
}

.rt-menu-header{
  display:flex;
  align-items:center;
  gap:12px;
  padding:20px 14px 14px;
  color:#ffffff;                /* white text */
  font-size:18px; font-weight:600; letter-spacing:.5px;
  margin-bottom:6px;
  padding: 11px 14px 11px 26px;
}
.rt-menu-header span{
  flex-shrink:0;                /* text squeeze na ho */
}
.rt-menu-header::after{
  content:"";
  flex:1;                       /* bachi hui jagah line le le */
  height:1px;
  background:rgba(255,255,255,.25);   /* halki white line */
}

.rt-logout-row{ justify-content:flex-start; }
.rt-logout-row .form-check-input{ cursor:pointer; }
.rt-logout-row .form-check-input:checked{ background-color:var(--rt-orange); border-color:var(--rt-orange); }

.package-rows{
    max-height: 400px;
    overflow-y: auto;
}
/* ---------- TOPBAR ---------- */
.rt-topbar{
  height: var(--rt-topbar-h); background:#fff;
  display:flex; align-items:center; gap: 5rem;
  padding:0rem 3rem 0rem 4rem; position:sticky; top:0; z-index:1030;
  box-shadow: rgba(0,0,0,0.1) 0px 4px 12px;   /* aapki existing navbar shadow */
}
.rt-topbar__left{ display:flex; align-items:center; gap:12px; }
.rt-topbar__left-headings{
    display:flex;
    gap: 12px;
}
.rt-sidebar-toggle{
  display:none; background:transparent; border:0;
  font-size:26px; color:#1b1b1d; cursor:pointer; line-height:1;
}
.rt-topbar__brand-icon{ width:30px; height:30px; object-fit:contain; }
.rt-topbar__brand-icon-headings{ width:30px; height:30px; object-fit:contain; }
.rt-topbar__title{
    color: var(--Dark-Grey, #212121);
    /* Medium H3 */
    font-family: Poppins;
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    margin: auto;
}
.rt-topbar__title-headings{
    color: var(--Dark-Grey, #212121);
    /* Medium H3 */
    font-family: Poppins;
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    margin-bottom:0;
}

.rt-topbar__search{
  flex:1; max-width:520px; display:flex; align-items:center; gap:10px;
  background:#F5F5F5; border-radius:100px; padding:10px 18px; color:#AEAEAE;
}
.rt-topbar__search i{ font-size:18px; }
.rt-topbar__search input{ border:0; outline:0; background:transparent; flex:1; font-size:14px; color:#333; }


/* ── Table search (topbar search ka duplicate, alag naam) ── */
.rt-table-search{
  flex:1; max-width:420px; display:flex; align-items:center; gap:10px;
  background:#F5F5F5; border-radius:100px; padding:10px 18px; color:#AEAEAE;
}
.rt-table-search i{ font-size:18px; }
.rt-table-search input{ border:0; outline:0; background:transparent; flex:1; font-size:14px; color:#333; }

@media (max-width: 767.98px){
  .rt-table-search{ max-width:100%; width:100%; }
}

.rt-topbar__right{ display:flex; align-items:center; gap:16px; margin-left:auto; }
.rt-icon-btn{
  width:42px; height:42px; border:none; background:#fff;
  display:flex; align-items:center; justify-content:center; cursor:pointer; padding:0;
}
.rt-icon-btn:hover{ background:#f7f7f7; }
.rt-icon-btn img{ width:20px; height:20px; object-fit:contain; }
.rt-divider{ width:1px; height:30px; background:#fff; }

.rt-user__link{ display:flex; align-items:center; gap:10px; text-decoration:none; color:#1b1b1d; font-weight:500; }
.rt-user__avatar{ width:40px; height:40px; border-radius:50%; object-fit:cover; }
.rt-user__name{ font-size:14px; white-space:nowrap; }

/* ---------- RESPONSIVE ---------- */
.rt-sidebar-backdrop{
  position:fixed; inset:0; background:rgba(0,0,0,.45);
  opacity:0; visibility:hidden; transition:.25s ease; z-index:1035;
}
@media (max-width: 1199.98px){
  .rt-sidebar{ transform:translateX(-100%); }
  body.rt-sidebar-open .rt-sidebar{ transform:translateX(0); box-shadow:0 0 40px rgba(0,0,0,.4); }
  body.rt-sidebar-open .rt-sidebar-backdrop{ opacity:1; visibility:visible; }
  .rt-page{ margin-left:0 !important; }
  .rt-sidebar-toggle{ display:inline-flex; }
  /* Sidebar khula ho to background scroll lock */
    body.rt-sidebar-open{
    overflow: hidden !important;
    height: 100vh !important;
    }
}
@media (max-width: 575.98px){
  .rt-topbar{ padding:0 14px; gap:10px; }
  .rt-topbar__search{ display:none; }
  .rt-topbar__title{ font-size:18px; }
  .rt-user__name{ display:none; }
  .rt-divider{ display:none; }
}


.rt-topbar__left-mobile{
    display: none;
}

/* ═══════════════════════════════════════
   MOBILE RESPONSIVE — SIDEBAR + TOPBAR
   ═══════════════════════════════════════ */
.rt-topbar__mobile-logo{ display:none; }
.rt-sidebar-close{ display:none; }

@media (max-width: 1199.98px){
  /* ---- TOPBAR: hamburger | center logo | bell+avatar ---- */
  .rt-topbar{ gap:0; padding:0 16px; background-color: #F5F5F5; justify-content:space-between; }
  .rt-topbar__left{ margin-right:0; }
  .rt-topbar__brand-icon,
  .rt-topbar__title{ display:none; }              /* desktop icon+title hide */

 /* hamburger ko white circle pill banao (Figma jaisa) */
  .rt-sidebar-toggle{
    display:inline-flex; align-items:center; justify-content:center;
    width:44px; height:44px; border-radius:50%;
    background:#f4f4f6; color:#1b1b1d; font-size:22px;
  }
  .rt-menu-header{
    display:flex;
    align-items:center;
    gap:12px;
    padding:20px 14px 14px;
    color:#ffffff;                /* white text */
    font-size:16px; font-weight:600; letter-spacing:.5px;
    margin-bottom:6px;
    padding: 11px 14px 11px 26px;
    }

  /* center logo — saaf, clicks neeche jaane do */
  .rt-topbar__mobile-logo{
    display:flex; align-items:center;
    position:static; transform:none; left:auto;   /* absolute hata diya — flow mein center */
    margin:0 auto;
    pointer-events:none;
    }
  .rt-topbar__mobile-logo img{ width:130px; height:auto; }

  .rt-topbar__search{ display:none; }

  /* search hide */
  .rt-topbar__right{ margin-left:0; gap:8px; }
  .rt-divider,
  .rt-logout,
  .rt-user__name{ display:none; }                  /* sirf bell + avatar */

  .rt-user__avatar{ width:35px; height:35px; }
  .rt-icon-btn{
    width:40px; height:40px; border:0; background:#ffffff; border-radius: 50%;
  }
  .rt-icon-btn img{ width:22px; height:22px; }

  .rt-user__link.dropdown-toggle::after{
    display:inline-block;
    margin-left:2px;
    color:#9a9aa0;
  }

  /* ---- SIDEBAR: full-height dark slide-in ---- */
  .rt-sidebar{
    width:280px;
    height:100dvh;
    overflow:hidden;
    overscroll-behavior: contain;
  }                   /* mobile pe thodi chaud */

  .rt-sidebar__brand{
    width:100%;
    height:auto; padding:16px 20px 20px;
    margin:0;
    clip-path:none;
    border-radius:0;
    background:var(--rt-sidebar-bg);
    filter:none;
    display:flex;
    flex-direction:column;          /* close upar, logo neeche */
    align-items:flex-start;         /* logo left-align (Figma jaisa) */
    gap:1.7rem;
  }
  .rt-brand-logo{ width:100%; }
  img.rt-brand-logo{ filter:none; }                /* logo asli colors */

  .rt-sidebar__nav{
    margin-top:0 !important;
    padding-top:6px;
    padding-bottom:24px;
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior: contain;   /* ⭐ scroll background tak na jaaye */
  }

  .rt-sidebar-close{
    display:inline-flex; align-items:center; justify-content:center;
    width:40px; height:40px; flex-shrink:0;
    align-self:flex-start;            /* close button row mein right side */
    background:#fff; border:0; border-radius:50%;
    color:#AEAEAE; font-size:22px; cursor:pointer; line-height:1;
  }
  button#rtSidebarClose > i {
    font-size: 1.5rem;
  }
  .rt-brand-logo--desktop{ display:none; }
  .rt-brand-logo--mobile{
    display:block;
    width:100%; height:auto;
  }
  .rt-user__link{
    gap:6px; padding:3px 10px 3px 3px;
    background:#ffffff; border-radius:30px;
  }
  .content-container{
    padding: 1rem 1rem 1rem 1rem;
  }
 .rt-sidebar-toggle{
  display:inline-flex; align-items:center; justify-content:center;
  width:40px; height:40px;
  border-radius:50%;
  background:#ffffff;
  border:0; cursor:pointer; padding:0;
  box-shadow:0 1px 4px rgba(0,0,0,.08);
}
.rt-toggle-icon{
  width:16.8px; height:14.4px;
}
.rt-topbar__left-mobile{
    display: flex;
    gap: 0.5rem;
}
.rt-topbar__title-mobile{
    color: var(--Dark-Grey, #212121);
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    margin-bottom: 0;
}
.rt-topbar__brand-icon-mobile{ width:24px; height:24px; object-fit:contain; }

}

/* Extra-small phones (<400px) */
@media (max-width: 399.98px){
  .rt-topbar__mobile-logo img{ width:110px;  }
  .rt-sidebar{ width:70%; }
}


/* ───────── DASHBOARD CARDS ───────── */
.rt-card{
  display:flex; background:#fff;
  border:1px solid #eef0f4; border-radius:10px;
  padding:18px 20px; height:100%;
  text-decoration:none; color:inherit;
  transition:box-shadow .18s ease, transform .18s ease;
}
.rt-card:hover{ box-shadow:0 6px 20px rgba(0,0,0,.08); transform:translateY(-2px); }

.rt-card__icon{
  width:46px; height:46px; border-radius:10px; flex-shrink:0;
  background:rgba(255,94,0,.10);
  display:flex; align-items:center; justify-content:center;
}
.rt-card__icon i{ font-size:24px; color:var(--rt-orange); }

.rt-card__body{ display:flex; flex-direction:column; }
.rt-card__title{ margin:0; font-size:15px; font-weight:600; color:#222222; }
.rt-card__manage{ font-size:12px; color:#AEAEAE; margin-top:3px; }
.rt-card__count{ font-size:22px; font-weight:700; color:#222222; margin-top:2px; line-height:1.2; }
.rt-card__subtext{ font-size:12px; color:#AEAEAE; margin-top:4px; }
.rt-card__bottom{
  margin-top:auto; padding-top:18px;
  font-size:11px; color:#c5c5cb; letter-spacing:.2px;
}

/* SETTING cards (no count): icon top, vertical, bottom text neeche */
.rt-card--setting{ flex-direction:column; gap:12px; min-height:175px; }

/* STAT cards (with count): icon left, title+count right */
.rt-card--stat{ flex-direction:row; align-items:center; gap:14px; }

/* Section heading */
.rt-topbar__left-headings{ display:flex; align-items:center; gap:10px; }
.rt-topbar__brand-icon-headings{ width:22px; height:22px; object-fit:contain; }
/* Inline ho chuke SVG (rt-theme-svg) ka size pakka karo */
svg.rt-topbar__brand-icon-headings,
svg.rt-theme-svg-inline.rt-topbar__brand-icon-headings{
  width:22px !important;
  height:22px !important;
}



/* ───────── DASHBOARD CARDS ───────── */
.rt-card{
  display:flex; background:#fff;
  border:1px solid #eef0f4; border-radius:14px;
  padding:18px 20px; height:100%;
  text-decoration:none; color:inherit;
  transition:box-shadow .18s ease, transform .18s ease;
}
.rt-card:hover{ box-shadow:0 6px 20px rgba(0,0,0,.08); transform:translateY(-2px); }

.rt-card__icon{
  width:46px; height:46px; border-radius:10px; flex-shrink:0;
  background:rgba(255,94,0,.10);
  display:flex; align-items:center; justify-content:center;
}
.rt-card__icon i{ font-size:24px; color:var(--rt-orange); }

.rt-card__body{ display:flex; flex-direction:column; }
.rt-card__title{ margin:0; font-size:15px; font-weight:600; color:#222222; }
.rt-card__manage{ font-size:12px; color:#AEAEAE; margin-top:3px; }
.rt-card__count{ font-size:22px; font-weight:700; color:#222222; margin-top:2px; line-height:1.2; }
.rt-card__subtext{ font-size:12px; color:#AEAEAE; margin-top:4px; }
.rt-card__bottom{
  margin-top:auto; padding-top:18px;
  font-size:11px; color:#c5c5cb; letter-spacing:.2px;
}

/* SETTING cards (no count): icon top, vertical, bottom text neeche */
.rt-card--setting{ flex-direction:column; gap:12px; min-height:175px; }

/* STAT cards (with count): icon left, title+count right */
.rt-card--stat{ flex-direction:row; align-items:center; gap:14px; }

/* Section heading */
.rt-topbar__left-headings{ display:flex; align-items:center; gap:10px; }
.rt-topbar__brand-icon-headings{ width:22px; height:22px; object-fit:contain; }



/* ───────── DASHBOARD STAT CARDS (top row) ───────── */
.rt-stat-card{
  display:flex; align-items:flex-start; justify-content:space-between;
  background:#fff; border-radius:10px;
  padding:22px 24px; height:120px;
  box-shadow:0 2px 10px rgba(0,0,0,.04);
}
.rt-stat-card__info{
  display:flex; flex-direction:column; gap:6px;
  height:100%; justify-content:center;     /* text vertically center, icon upar */
}
.rt-stat-card__label{ font-size:18px; color:#222222; font-weight:400; }
.rt-stat-card__value{ margin:0; font-size:24px; font-weight:600; color:#222222; line-height:1; }

.rt-stat-card__icon svg{
  width:40px; height:40px;
  fill: var(--rt-orange);
}
.rt-stat-card__icon svg path,
.rt-stat-card__icon svg circle,
.rt-stat-card__icon svg rect,
.rt-stat-card__icon svg polygon,
.rt-stat-card__icon svg g{
  fill: var(--rt-orange) !important;
}

/* ───────── STAT CARDS CAROUSEL (mobile) ───────── */
.rt-stats-dots{ display:none; }   /* desktop pe dots hide */
/* ── Task tabs — mobile carousel (properties stats jaisa) ── */
.rt-task-tabs-dots{ display:none; }   /* desktop pe dots hide */

@media (max-width: 991.98px){
  /* Row ko horizontal scroll container banao */
  .rt-task-tabs-row{
    flex-wrap:nowrap !important;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .rt-task-tabs-row::-webkit-scrollbar{ display:none; }

  /* Har tab ~82% width — ek waqt mein ek dikhe, agla jhalak de */
  .rt-task-tab-col{
    flex:0 0 82% !important;
    max-width:82% !important;
    scroll-snap-align:center;
  }

  /* Dots — same look as rt-stats-dots */
  .rt-task-tabs-dots{
    display:flex; justify-content:center; gap:8px;
    margin-top:14px;
  }
  .rt-task-tabs-dots .rt-dot{
    width:8px; height:8px; border-radius:50%;
    background:#d0d0d0; cursor:pointer;
    transition:all .3s ease;
  }
  .rt-task-tabs-dots .rt-dot.active{
    width:22px; border-radius:20px;
    background:var(--rt-orange);
  }
  .rt-todos-header__actions .btn, .to-do-load-more-btn{
    width: 100%;
  }

}

/* ───────── DASHBOARD STAT CARDS (top row) ───────── */

/* ───────── DASHBOARD CHARTS ───────── */
.rt-chart-card{
  background:#fff; border-radius:14px; padding:22px 24px; height:100%;
  box-shadow:0 2px 10px rgba(0,0,0,.04);
}
.full-height-chart-card{
    height: 100% !important;
}
.rt-chart-card__head{
  display:flex; align-items:center; justify-content:space-between;
  flex-wrap:wrap; gap:12px; margin-bottom:10px;
}
.rt-chart-card__head-padding{
    padding: 22px 24px;
}
.rt-chart-card__title{ display:flex; align-items:center; gap:10px; }
.rt-chart-card__title h5{ margin:0; font-size:20px; font-weight:600; color:#222222; }
.rt-chart-card__title svg{ width:24px; height:24px; fill:var(--rt-orange); }

/* ───────── CHART HEAD — TITLE + FILTER SAME LINE ───────── */
.rt-chart-card__head{
  flex-wrap:nowrap;
}
.rt-chart-card__title{
  min-width:0;
}
.rt-chart-card__title h5{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.rt-chart-filter-wrap{
  flex-shrink:0;
}

/* Filter dropdown (top-right) */
.rt-chart-filter{
  display:flex; align-items:center; gap:6px;
  font-size:14px; color:#555; cursor:pointer;
  padding:6px 4px;
}
.rt-chart-filter i{ font-size:18px; }

/* Legend top-left (under head) */
.rt-chart-card__legend{ display:flex; gap:22px; }
.rt-chart-card__legend--top{ margin-bottom:8px; }
.rt-legend-item{ display:flex; align-items:center; gap:7px; font-size:14px; color:#444; }
.rt-legend-item i{ width:11px; height:11px; border-radius:50%; display:inline-block; }
.rt-dot-this{ background:var(--rt-orange); }
.rt-dot-last{ background:#2196F3; }

/* Line chart body — taller, like image */
.rt-chart-card__body--line{ height:340px; position:relative; }
.rt-chart-card__body--line canvas{ height:100% !important; }

.rt-chart-card__body--center{ text-align:center; }

/* Doughnut */
.rt-doughnut-wrap{ position:relative; max-width:240px; margin:10px auto 0; }
.rt-doughnut-center{
  position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
  font-size:24px; font-weight:600; color:#212121; pointer-events:none;
}
.rt-doughnut-total{ margin:20px 0 18px; font-size:24px; font-weight:600; color:#222222; }

.rt-cat-legend{
  display:flex; gap:50px; justify-content:center;
  margin-top:4px; padding-left:4px;
}
.rt-cat-label{ display:flex; align-items:center; gap:8px; font-size:16px; color:#7A7A7A; font-weight:400; }
.rt-cat-label svg{ width:18px; height:18px; flex-shrink:0; }
.rt-cat-val{ font-size:16px; font-weight: 400;  color:#7A7A7A; padding-left:25px; }

/* Har category ka icon apne color mein */
.rt-cat-item:nth-child(1) .rt-cat-label svg{ fill:var(--rt-orange); }
.rt-cat-item:nth-child(2) .rt-cat-label svg path,
.rt-cat-item:nth-child(2) .rt-cat-label svg{ fill:#F5B82E; }
.rt-cat-item:nth-child(3) .rt-cat-label svg path,
.rt-cat-item:nth-child(3) .rt-cat-label svg{ fill:#6E6E6E; }


/* Filter dropdown */
.rt-chart-filter-wrap{ position:relative; }
.rt-chart-filter{
  display:flex; align-items:center; gap:6px;
  font-size:14px; color:#555; cursor:pointer;
  padding:6px 10px; background:#fff; border:1px solid #eee; border-radius:8px;
}
.rt-chart-filter i{ font-size:18px; }

.rt-chart-filter-menu{
  position:absolute; right:0; top:calc(100% + 6px);
  background:#fff; border:1px solid #eee; border-radius:10px;
  box-shadow:0 8px 24px rgba(0,0,0,.12); padding:6px;
  min-width:180px; z-index:50; display:none;
}
.rt-chart-filter-menu.open{ display:block; }
.rt-filter-opt{
  display:block; width:100%; text-align:left; border:0; background:transparent;
  padding:9px 12px; font-size:14px; color:#333; cursor:pointer; border-radius:6px;
}
.rt-filter-opt:hover{ background:#f5f5f5; }
.rt-filter-opt.active{ background:color-mix(in srgb, var(--rt-orange) 12%, transparent); color:var(--rt-orange); font-weight:500; }

.rt-filter-custom{
  display:none; flex-direction:column; gap:8px;
  padding:10px 12px; border-top:1px solid #eee; margin-top:4px;
}
.rt-filter-custom.show{ display:flex; }
.rt-filter-custom label{ display:flex; flex-direction:column; font-size:12px; color:#777; gap:3px; }
.rt-filter-custom input[type=date]{
  border:1px solid #ddd; border-radius:6px; padding:6px 8px; font-size:13px; height:auto;
}
.rt-filter-apply{
  background:var(--rt-orange); color:#fff; border:0; border-radius:6px;
  padding:7px; font-size:13px; cursor:pointer; margin-top:2px;
}

/* ───────── DASHBOARD CHARTS — MOBILE ───────── */
@media (max-width: 767.98px){
  .rt-chart-card{ padding:18px 16px; }

  /* Titles chhote */
  .rt-chart-card__title h5{ font-size:18px; }
  .rt-chart-card__title svg{ width:20px; height:20px; }

  /* Head wrap ho jaye, filter neeche na phaile */
  .rt-chart-card__head{ gap:8px; margin-bottom:8px; }

  /* Line chart height kam */
  .rt-chart-card__body--line{ height:260px; }

  /* Legend (This week / Last Week) chhota */
  .rt-chart-card__legend{ gap:16px; }
  .rt-legend-item{ font-size:13px; }

  /* Doughnut thoda chhota */
  .rt-doughnut-wrap{ max-width:200px; }
  .rt-doughnut-center{ font-size:16px; }
  .rt-doughnut-total{ font-size:20px; margin:16px 0 14px; }

  /* Category legend — 3 columns ki jagah evenly spread, gap kam */
  .rt-cat-legend{
    gap:0;
    justify-content:space-between;
    padding-left:0;
    flex-wrap:wrap;
  }
  .rt-cat-item{ flex:1; min-width:90px; align-items:center; }
  .rt-cat-label{ font-size:14px; gap:6px; }
  .rt-cat-label svg{ width:16px; height:16px; }
  .rt-cat-val{ font-size:14px; padding-left:0; text-align:center; }

  /* Filter menu — screen ke andar fit ho */
  .rt-chart-filter-menu{ min-width:160px; }
  .rt-chart-filter{ font-size:13px; padding:5px 8px; }
}

/* Bahut chhoti screens (<480px) — categories 1 line mein na samaayein to wrap */
@media (max-width: 479.98px){
  .rt-cat-legend{
    gap:14px;
    justify-content:space-around;
  }
  .rt-cat-item{ min-width:80px; }
  .rt-cat-label{ font-size:10px; }
  .rt-cat-val{ font-size:10px; }

  /* Filter menu right edge se na nikle */
  .rt-chart-filter-menu{
    right:auto; left:0;
    min-width:116px;
  }
  .rt-filter-opt{
    font-size: 12px;
  }
}

/* ───────── REVENUE PIPELINE ───────── */
/* ───────── REVENUE PIPELINE ───────── */
.rt-gauge-wrap{ position:relative; width:100%; height:200px; margin-top:20px; }
.rt-gauge{
  --r:180px; --seg-h:52px; --seg-w:12px;
  position:relative; width:330px; max-width:100%; height:165px; margin:0 auto;
}
.rt-seg-wrap{
  position:absolute; left:50%; bottom:0;
  width:0; height:var(--r);
  transform-origin:bottom center;
}
.rt-seg{
  position:absolute; top:0; left:calc(var(--seg-w) / -2);
  width:var(--seg-w); height:var(--seg-h); border-radius:8px;
}
.rt-gauge__center{
  position:absolute; left:50%; bottom:6px; transform:translateX(-50%);
  text-align:center; white-space:nowrap; width:100%;
  top:50%;
}
.rt-gauge__label{ font-size:18px; color:#222222; display:block; }
.rt-gauge__value{ display:flex; align-items:center; gap:8px; justify-content:center; margin-top:6px; flex-wrap:wrap; }
.rt-gauge__value strong{ font-size:24px; font-weight:600; color:#222222; }
.rt-gauge__badge{
  background:color-mix(in srgb, var(--rt-orange) 14%, transparent);
  color:var(--rt-orange); font-size:12px; font-weight:600;
  padding:3px 9px; border-radius:20px;
}

.rt-pipe-cards{ display:flex; gap:14px; margin-top:22px; }
.rt-pipe-mini{ flex:1; min-width:0; background:#f6f6f7; border-radius:12px; padding:16px 18px; }
.rt-pipe-mini__label{ font-size:14px; color:#222222; }
.rt-pipe-mini__row{ display:flex; align-items:center; justify-content:space-between; margin-top:10px; gap:8px; flex-wrap:wrap; }
.rt-pipe-mini__row strong{ font-size:20px; font-weight:700; color:#1a1a1a; line-height:1.2; }
.rt-pipe-badge{ font-size:12px; font-weight:600; padding:3px 9px; border-radius:20px; white-space:nowrap; flex-shrink:0; }
.rt-pipe-badge--green{ background:#22A848; color:#fff; }
.rt-pipe-badge--red{ background:#E5392F; color:#fff; }

/* ───────── TOP REVENUE TABLE ───────── */
.rt-table-wrap{ overflow-x:auto; }
.rt-revenue-table{ width:100%; border-collapse:collapse; }
.rt-revenue-table thead th{
  text-align:left; font-size:16px; font-weight:600; color:#222222;
  padding:0 12px 14px; border-bottom:1px solid #eee; white-space:nowrap;
}
.rt-revenue-table tbody td{
  padding:16px 12px; font-size:14px; color:#7A7A7A;
  border-bottom:1px solid #f2f2f2; white-space:nowrap;
}
.rt-revenue-table tbody tr:last-child td{ border-bottom:0; }
.rt-table-empty{ text-align:center !important; color:#aaa !important; padding:30px !important; }

.rt-stage{
  display:inline-block; min-width:110px; text-align:center;
  padding:7px 14px; border-radius:24px; font-size:14px; font-weight:500;
}
.rt-stage--closed{ background:#7A7A7A; color:#fff; }
.rt-stage--offer{ background:color-mix(in srgb, var(--rt-orange) 28%, #fff); color:var(--rt-orange); }
.rt-stage--archive{ background:var(--rt-orange); color:#fff; }

/* ───────── MOBILE ───────── */
@media (max-width: 767.98px){
  .rt-gauge{ --r:120px; --seg-h:44px; --seg-w:10px; width:260px; height:130px; }
  .rt-gauge-wrap{ height:155px; }
  .rt-gauge__value strong{ font-size:16px; }
  .rt-gauge__label{ font-size:14px; }
  .rt-pipe-mini__row strong{ font-size:18px; }
  .rt-revenue-table thead th{ font-size:14px; }
  .rt-revenue-table tbody td{ font-size:13px; padding:13px 10px; }
  .rt-stage{ min-width:90px; font-size:12px; padding:5px 10px; }
}

/* ───────── DASHBOARD CHARTS ───────── */

/* ═══════════════════════════════════════════════════
   FULL RESPONSIVE — PIPELINE + TOP REVENUE
   (big desktop → 1366 laptop → tablet → mobile)
═══════════════════════════════════════════════════ */

/* Equal-height: pipeline + top revenue cards barabar */
/* Equal-height: dono cards barabar, par content natural spacing */
.rt-chart-card{ display:flex; flex-direction:column; }
.rt-table-wrap{ flex:1; }    /* table card mein table bachi jagah le */

/* Pipeline ka content — gauge + mini cards normal gap, neeche khaali na ho */
.rt-pipe-cards{ margin-top:20px; }   /* fixed gap, auto nahi */                      /* table area bachi height le */

/* ── 1366 / smaller laptops (≤1400px) ── */
@media (max-width: 1400px){
  .rt-chart-card{ padding:18px 18px; }
  .rt-chart-card__title h5{ font-size:20px; }

  /* Line chart thoda chhota */
  .rt-chart-card__body--line{ height:300px; }
    .rt-topbar__title{ font-size:18px; }

  /* Doughnut */
  .rt-doughnut-wrap{ max-width:215px; }
  .rt-cat-legend{ gap:30px; }
  .rt-cat-label{ font-size:12px; }
  .rt-cat-val{ font-size:12px;  }

  /* Gauge */
  .rt-gauge{ --r:142px; --seg-h:40px; --seg-w:11px; width:290px; height:148px; }
  .rt-gauge-wrap{ height:172px; }
  .rt-gauge__value strong{ font-size:16px; }
  .rt-gauge__label{ font-size:15px; }
  .rt-pipe-mini__row strong{ font-size:19px; }
  .rt-pipe-mini__label{ font-size:10px; }

  /* Table */
  .rt-revenue-table thead th{ font-size:15px; padding:0 10px 12px; }
  .rt-revenue-table tbody td{ font-size:14px; padding:14px 10px; }
  .rt-stage{ min-width:100px; font-size:13px; padding:6px 12px; }
  .rt-stat-card__label{ font-size:14px;}
  .rt-stat-card__value{ margin:0; font-size:20px;}

  .btn{ font-size: 12px; }

}

/* ── Tablet landscape (≤1199px) — Bootstrap col-lg stack ── */
@media (max-width: 1199.98px){
  .rt-chart-card{ height:auto; }     /* stack hone pe auto height */
  .rt-pipe-cards{ margin-top:18px; } /* ab pin ki zaroorat nahi */
}

/* ── Tablet (≤991px) ── */
@media (max-width: 991.98px){
  .rt-chart-card__body--line{ height:300px; }

  /* Gauge thoda bada (full width mil gayi) */
  .rt-gauge{ --r:142px; --seg-h:52px; --seg-w:12px; width:310px; height:155px; }
  .rt-gauge-wrap{ height:180px; }
}

/* ── Mobile (≤767px) ── */
@media (max-width: 767.98px){
  /* Gauge */
  .rt-gauge{ --r:118px; --seg-h:42px; --seg-w:10px; width:255px; height:128px; }
  .rt-gauge-wrap{ height:150px; }
  .rt-gauge__value{ gap:7px; }
  .rt-gauge__value strong{ font-size:16px; }
  .rt-gauge__label{ font-size:13px; }
  .rt-gauge__badge{ font-size:11px; padding:2px 7px; }

  /* Mini cards stack (upar-neeche) */
  .rt-pipe-cards{ flex-direction:column; gap:12px; }
  .rt-pipe-mini{ padding:14px 16px; }
  .rt-pipe-mini__label{ font-size:10px; }
  .rt-pipe-mini__row strong{ font-size:18px; }

  /* Table horizontal scroll */
  .rt-table-wrap{ overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .rt-revenue-table{ min-width:540px; }
  .rt-revenue-table thead th{ font-size:13px; padding:0 10px 12px; }
  .rt-revenue-table tbody td{ font-size:12px; padding:12px 10px; }
  .rt-stage{ min-width:84px; font-size:11px; padding:5px 9px; }
}

/* ── Small mobile (≤479px) ── */
@media (max-width: 479.98px){
  .rt-gauge{ --r:130px; --seg-h:38px; --seg-w:9px; width:220px; height:116px; }
  .rt-gauge-wrap{ height:135px; }
  .rt-gauge__value{ flex-direction:column; gap:3px; }
  .rt-gauge__value strong{ font-size:16px; }
  .rt-gauge__label{ font-size:14px; }

  .rt-pipe-mini__row strong{ font-size:17px; }
}

/* ───────── Applicant LEADS SECTION ───────── */
.rt-view-all{
  display:inline-flex; align-items:center; gap:0px;
  font-size:16px; font-weight:600; color:var(--rt-orange);
  text-decoration:none; white-space:nowrap; flex-shrink:0;
}
.rt-view-all:hover{ color:var(--rt-orange); opacity:.85; }
.rt-view-all svg{ width: 24px; height: 24px; }

/* Leads table — thodi si tweaks (baaki rt-revenue-table se aati hai) */
.rt-leads-table thead th{ padding:16px 12px 16px; }
.rt-leads-table tbody td{ padding:16px 12px; }
.rt-leads-table tbody tr:last-child td{ border-bottom:0; }

/* ── Mobile ── */
@media (max-width: 767.98px){
  .rt-view-all{ font-size:14px; }
  .rt-view-all i{ font-size:16px; }
  .rt-leads-table{ min-width:640px; }   /* horizontal scroll */
  .rt-leads-table thead th{ font-size:13px; padding:12 10px 12px; }
  .rt-leads-table tbody td{ font-size:12px; padding:13px 10px; }
}
/* ───────── LEADS SECTION ───────── */

/* ───────── RECENT ACTIVITIES ───────── */
.rt-activity-list{ margin-top:6px; }
.rt-activity-item{
  display:flex; align-items:center; gap:14px;
  padding:8px 0; border-bottom:1px solid #f2f2f2;
}
.rt-activity-item:last-child{ border-bottom:0; }
.rt-activity-avatar{
  width:48px; height:48px; border-radius:50%; object-fit:cover; flex-shrink:0;
}
.rt-activity-info{ flex:1; min-width:0; }
.rt-activity-name{
  font-size:16px; font-weight:600; color:#1a1a1a;
}
.rt-activity-role{
  font-size:15px; font-weight:500; color:var(--rt-orange); margin-left:4px;
}
.rt-roles-btn-icon svg {
    width: 18px;
    height: 18px;
    fill: white;
}
.rt-activity-desc{ font-size:15px; color:#7A7A7A; margin-top:3px; }
.rt-activity-time{ font-size:14px; color:#a0a0a0; margin-top:3px; }
.rt-activity-dot{
  width:11px; height:11px; border-radius:50%; flex-shrink:0; align-self:center;
}

/* ───────── LEAD SOURCE ───────── */
.rt-leadsource-body{ height:340px; position:relative; }
.rt-leadsource-body canvas{ height:100% !important; }

/* ── 1366 laptop ── */
@media (max-width: 1400px){
  .rt-leadsource-body{ height:300px; }
  .rt-activity-name{ font-size:15px; }
  .rt-activity-role{ font-size:14px; }
  .rt-activity-desc{ font-size:14px; }
}

/* ── Mobile ── */
@media (max-width: 767.98px){
  .rt-activity-avatar{ width:42px; height:42px; }
  .rt-activity-item{ gap:10px; padding:14px 0; }
  .rt-activity-name{ font-size:14px; }
  .rt-activity-role{ font-size:13px; }
  .rt-activity-desc{ font-size:13px; }
  .rt-activity-time{ font-size:12px; }
  .rt-leadsource-body{ height:260px; }
}
/* ───────── LEAD SOURCE ───────── */

/* ═══════════════════════════════════════════
   PROPERTIES DASHBOARD — COMPLETE (FIXED)
═══════════════════════════════════════════ */

/* ── Stat cards (icon left) ── */
.rt-prop-stat-card{
  display:flex; align-items:center; gap:10px;
  background:#fff; border-radius:10px; padding:20px 22px;
  box-shadow:0 2px 10px rgba(0,0,0,.04); height:100%;
}
.rt-prop-stat-card__icon{
  flex-shrink:0; width:40px; height:40px;
  display:flex; align-items:center; justify-content:center;
}
.rt-prop-stat-card__icon svg{ width:40px; height:40px; fill:var(--rt-orange); }
.rt-prop-stat-card__icon svg path{ fill:var(--rt-orange); }
.rt-prop-stat-card__info{ display:flex; flex-direction:column; gap:5px; min-width:0; }
.rt-prop-stat-card__label{ font-size:18px; color:#222222; font-weight:400; line-height:1.3; }
.rt-prop-stat-card__value{ font-size:24px; font-weight:600; color:#222222; margin:0; line-height:1.2; }

/* Right column cards natural height */
.col-lg-4 > .rt-chart-card{ height:auto; }

/* ── Properties Management: hero image background ── */
.rt-prop-hero{
  position:relative; overflow:hidden;
  min-height:440px; background:#e9ecef;
}
.rt-prop-hero > img{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block;
}
.rt-prop-hero--noimg{
  background: url('/assets/img/property-dashboard-bg.svg') center/cover no-repeat;
  border-bottom-left-radius: 14px;
}

/* Progress bars — top-right, FIXED HEIGHT + SCROLL (4 bars) */
.rt-prop-bars{
  position:absolute; top:0px; right:6px; width:44%; min-width:290px; z-index:3;
  display:flex; flex-direction:column; gap:16px;
  max-height:230px; height:168px; overflow-y:auto; padding: 12px;
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(0px);
  border-radius: 12px;
}
.rt-prop-bars::-webkit-scrollbar{ width:5px; }
.rt-prop-bars::-webkit-scrollbar-thumb{ background:rgba(0,0,0,.2); border-radius:10px; }
.rt-prop-bars::-webkit-scrollbar-track{ background:transparent; }

.rt-prop-bar{ display:flex; align-items:center; gap:14px; flex-shrink:0; }
.rt-prop-bar__label{
  font-size:14px; color:#7A7A7A; font-weight:500;
  white-space:nowrap; flex-shrink:0; width:160px;
}
.rt-prop-bar__track{
  position:relative; flex:1; height:26px;
  background:#eceef0; border-radius:20px; overflow:hidden;
  display:flex; align-items:center;
}
.rt-prop-bar__pct{ position:absolute; left:8px; z-index:2; font-size:12px; color:#7A7A7A; font-weight:500; }
.rt-prop-bar__fill{
  height:100%; border-radius:20px; margin-left:auto;
  background:linear-gradient(240deg, color-mix(in srgb, var(--rt-orange) 40%, #fff), var(--rt-orange));
}

/* Bottom overlay */
.rt-prop-hero__overlay{
  position:absolute; left:24px; right:24px; bottom:24px; z-index:3;
  background:rgba(255, 255, 255, 0.8); backdrop-filter:blur(0px);
  border-radius:10px; padding:14px 20px 14px 28px;
  display:flex; align-items:center; justify-content:space-between;
}
.rt-prop-hero__overlay span{ font-size:24px; font-weight:600; color:var(--rt-orange); }
.rt-prop-hero__btn{
  width:48px; height:48px; border-radius:50%; background:transparent;
  display:flex; align-items:center; justify-content:center; flex-shrink:0; text-decoration:none;
}
.rt-prop-hero__btn svg{ width:48px; height:48px; display:block; }
/* Circle (rect) — theme color */
.rt-prop-hero__btn svg rect{ fill:var(--rt-orange) !important; }
/* Arrow (path) — white rahe */
.rt-prop-hero__btn svg path{ fill:#ffffff !important; }

/* ── Analytics ── */
.rt-analytics-body{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
.rt-analytics-chart{ flex:0 0 auto; }
.rt-analytics-chart .rt-doughnut-wrap{ width:165px; max-width:165px; margin:0; }
.rt-analytics-center{ flex-direction:column; }
.rt-analytics-center strong{ font-size:14px; color:#222222; font-weight:600; }
.rt-analytics-legend{ flex:1; min-width:150px; display:flex; flex-direction:column; gap:11px; }
.rt-alg-item{ display:flex; align-items:center; gap:8px; font-size:10px; color:#222222; }
.rt-alg-item b{ margin-left:auto; font-size: 10px; color:#7A7A7A; font-weight:4 00; }
.rt-alg-dot{ width:11px; height:11px; border-radius:50%; flex-shrink:0; }

/* ── Recent Property (base) ── */
.rt-recent-list{
  display:flex; flex-direction:column;
  max-height:392px; overflow-y:auto; padding-right:6px;
}
.rt-recent-list::-webkit-scrollbar{ width:5px; }
.rt-recent-list::-webkit-scrollbar-thumb{ background:#d5d5d5; border-radius:10px; }
.rt-recent-list::-webkit-scrollbar-track{ background:transparent; }

.rt-recent-item{
  display:flex; align-items:center; gap:14px;
  padding:14px 0; border-bottom:1px solid #f2f2f2; flex-shrink:0;
}
.rt-recent-item:last-child{ border-bottom:0; }
.rt-recent-thumb{ width:90px; height:64px; border-radius:12px; object-fit:cover; flex-shrink:0; }
.rt-recent-info{ flex:1; min-width:0; }
.rt-recent-name{ font-size:16px; font-weight:400; color:#222222; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.rt-recent-sub{ font-size:16px; color:#7A7A7A; margin-top:3px; }
.rt-recent-tag{ font-size:16px; font-weight:400; flex-shrink:0; }
.rt-recent-tag--let{ color:var(--rt-orange); }
.rt-recent-tag--sale{ color:#2196F3; }


/* Card as clickable tab */
.rt-prop-stat-card--link {
    text-decoration: none;
    cursor: pointer;
    transition: background .2s ease;
}
.rt-prop-stat-card--link:hover {
    background: color-mix(in srgb, var(--rt-orange) 8%, #fff);
}


/* ACTIVE tab — orange bg, white icon + text */
.rt-prop-stat-card--active,
.rt-prop-stat-card--active:hover {
    background: var(--rt-orange) !important;
}
.rt-prop-stat-card--active .rt-prop-stat-card__label,
.rt-prop-stat-card--active .rt-prop-stat-card__value {
    color: #fff !important;
}
.rt-prop-stat-card--active .rt-prop-stat-card__icon svg,
.rt-prop-stat-card--active .rt-prop-stat-card__icon svg path,
.rt-prop-stat-card--active .rt-prop-stat-card__icon svg rect,
.rt-prop-stat-card--active .rt-prop-stat-card__icon svg circle,
.rt-prop-stat-card--active .rt-prop-stat-card__icon svg polygon {
    fill: #fff !important;
}

.table-container{
    margin-top: 2rem;
}
.table-card-title{
    color: #222222;
    font-size: 24px;
    font-weight: 600;
}
/* ═══════ EQUAL HEIGHT — sirf BADE desktop (>1400px) ═══════ */
@media (min-width: 1401px){
  .row.align-items-start{ align-items:stretch !important; }
  .row.align-items-start > .col-lg-4{ display:flex; flex-direction:column; }
  .row.align-items-start > .col-lg-4 > .rt-chart-card:first-child{ flex-shrink:0;  }
  .row.align-items-start > .col-lg-4 > .rt-chart-card:last-child{
    flex:1; display:flex; flex-direction:column; min-height:0;
  }
  .row.align-items-start > .col-lg-4 > .rt-chart-card:last-child .rt-recent-list{
    flex:1; max-height:360px !important; min-height:0; overflow-y:auto;
  }
  .row.align-items-start > .col-lg-8{ display:flex; }
  .row.align-items-start > .col-lg-8 > .rt-chart-card{ flex:1; display:flex; flex-direction:column; }
  .row.align-items-start > .col-lg-8 > .rt-chart-card .rt-prop-hero{ flex:1; min-height:0; }
}

/* ═══════ 1366 LAPTOP (992–1400px) — Recent FIXED 3 records, NO stretch ═══════ */
@media (min-width: 992px) and (max-width: 1400px){
  .rt-prop-stat-card{ padding:16px; gap:12px; }
  .rt-prop-stat-card__icon{ width:40px; height:40px; }
  .rt-prop-stat-card__icon svg{ width:34px; height:34px; }
  .rt-prop-stat-card__label{ font-size:14px; line-height:1.25; }
  .rt-prop-stat-card__value{ font-size:22px; }
  .table-card-title{ font-size: 20px;}
  .action-table{ min-width: 150px !important; }
  .action-table > .d-flex{ gap: 6px !important; }
  .action-table a svg,
  .action-table button svg{ width: 22px; height: 22px; }

  .rt-prop-hero{ min-height:440px !important; }
  .rt-prop-bars{ width:52%; min-width:240px; gap:16px; top:22px; right:22px; max-height:210px; padding: 12px; }
  .rt-prop-bar{ gap:10px; }
  .rt-prop-bar__label{ width:130px; font-size:12px; }
  .rt-prop-bar__track{ height:30px; }
  .rt-prop-bar__pct{ font-size:12px; left:8px; }
  .rt-prop-hero__overlay{ left:20px; right:20px; bottom:20px; padding:12px 16px 12px 22px; }
  .rt-prop-hero__overlay span{ font-size:19px; }
  .rt-prop-hero__btn{ width:44px; height:44px; }

  .rt-analytics-body{ justify-content:center; }
  .rt-analytics-chart .rt-doughnut-wrap{ width:150px; max-width:150px; }
  .rt-analytics-legend{ min-width:140px; gap:9px; }
  .rt-alg-item{ font-size:10px; gap:6px; }

  .rt-recent-thumb{ width:74px; height:56px; }
  .rt-recent-name{ font-size:14px; }
  .rt-recent-sub{ font-size:12px; }
  .rt-recent-tag{ font-size:14px; }

  /* Equal-height OFF — natural heights, Recent FIXED 3 records */
  /* Equal-height ON — dono side barabar, par Recent LIST fixed 3 records + scroll */
  .row.align-items-start{ align-items:stretch !important; }
  .row.align-items-start > .col-lg-4{ display:flex !important; flex-direction:column !important; }
  .row.align-items-start > .col-lg-4 > .rt-chart-card:first-child{ flex-shrink:0 !important; margin-bottom:16px !important; }
  .row.align-items-start > .col-lg-4 > .rt-chart-card:last-child{
    flex:1 !important; display:flex !important; flex-direction:column !important; min-height:0 !important; margin-bottom: 0px !important;
  }
  /* Recent LIST — 3 records fixed, baaki scroll (card stretch hota hai par list fixed) */
  .row.align-items-start > .col-lg-4 > .rt-chart-card:last-child .rt-recent-list{
    flex:0 0 auto !important;
    height:300px !important;
    max-height:300px !important;
    overflow-y:auto !important;
  }
  .rt-sales-price{
    font-size: 12px !important;
  }

  /* Left column — right ki height match kare */
  .row.align-items-start > .col-lg-8{ display:flex !important; }
  .row.align-items-start > .col-lg-8 > .rt-chart-card{
    flex:1 !important; display:flex !important; flex-direction:column !important;
  }
  .row.align-items-start > .col-lg-8 > .rt-chart-card .rt-prop-hero{
    flex:1 !important; min-height:0 !important;
  }
}

/* ═══════ Smaller laptop (≤1280px) — stat cards chhote ═══════ */
@media (min-width: 992px) and (max-width: 1280px){
  .rt-prop-stat-card__label{ font-size:13px; }
  .rt-prop-stat-card__value{ font-size:20px; }
  .rt-prop-stat-card__icon{ width:36px; height:36px; }
  .rt-prop-stat-card__icon svg{ width:30px; height:30px; }
  .rt-prop-hero{ min-height:420px !important; }
}

/* ═══════ Tablet (≤991px) — stack ═══════ */
@media (max-width: 991.98px){
  .rt-prop-hero{ min-height:auto; display:flex; flex-direction:column; }
  .rt-prop-hero > img{ position:static; height:280px; order:2; }
  .rt-prop-bars{
    position:static; width:100%; min-width:0; margin:0 0 16px; order:1;
    max-height:none; background:rgba(255,255,255,.92); padding:16px; border-radius:12px;
  }
  .rt-prop-hero__overlay{ position:static; margin:16px 0 0; left:auto; right:auto; bottom:auto; order:3; }
  .rt-recent-list{ max-height:300px; }
}

/* ═══════ Mobile (≤767px) ═══════ */
@media (max-width: 767.98px){
  /* Stat cards */
  .rt-prop-stat-card{ padding:16px 18px; gap:12px; }
  .rt-prop-stat-card__icon{ width:38px; height:38px; }
  .rt-prop-stat-card__icon svg{ width:34px; height:34px; }
  .rt-prop-stat-card__label{ font-size:14px; }
  .rt-prop-stat-card__value{ font-size:20px; }

  /* Analytics */
  .rt-analytics-body{ justify-content:center; }
  .rt-analytics-legend{ min-width:100%; }

  .card-header p{
    font-size: 16px;
  }
  /* Recent */
  .rt-recent-thumb{ width:76px; height:56px; }
  .rt-recent-name{ font-size:14px; }
  .rt-recent-sub{ font-size:12px; }

  /* ══ PROPERTIES MANAGEMENT ══ */
  .rt-prop-hero{
    min-height:auto !important;
    display:flex !important; flex-direction:column !important;
    background:transparent !important;
    overflow:visible !important;
    position:relative !important;
  }

  /* Bars — upar, white pe */
  .rt-prop-bars{
    position: absolute;
    top: 0px;
    right: 0px;
    width: 100%;
    z-index: 3;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    padding-right: 8px;
    backdrop-filter: blur(0px);
    gap: 16px;
    background: rgba(255, 255, 255, 0.8);
    border-radius: 12px;
    height: 200px;
  }
  .rt-prop-bar{ display:flex !important; flex-direction:row !important; align-items:center !important; gap:12px !important; }
  .rt-prop-bar__label{ width:auto !important; flex:0 0 auto !important; font-size:14px !important; white-space:nowrap !important; }
  .rt-prop-bar__track{ flex:1 !important; height:32px !important; }

  /* <img> tag agar dikhe to — bars ke neeche */
  .rt-prop-hero > img{
    position:relative !important; order:2 !important;
    inset:auto !important; top:auto !important; left:auto !important;
    width:100% !important; height:250px !important;
    border-radius:14px !important; object-fit:cover !important; display:none !important;
  }

  /* Background-image wala case (--noimg) — box banao bars ke neeche */
  .rt-prop-hero--noimg{
    background:transparent !important;   /* hero ka background hata */
  }
  .rt-prop-hero--noimg::after{
    content:"" !important; order:2 !important; display:block !important;
    width:100% !important; height:350px !important;
    border-radius:14px !important;
    background:url('/assets/img/properties-dashboard-background.svg') center/cover no-repeat !important;
  }

  /* Overlay — image ke upar bottom mein (negative margin se) */
  .rt-prop-hero__overlay{
    position:relative !important; order:3 !important;
    left:auto !important; right:auto !important; top:auto !important; bottom:auto !important;
    margin:-72px 14px 0 14px !important;   /* negative → image ke upar */
    padding:13px 16px 13px 20px !important; z-index:3 !important;
    background:rgba(255,255,255,.88) !important; backdrop-filter:blur(0px) !important;
    border-radius:14px !important;
  }
  .rt-prop-hero__overlay span{ font-size:16px !important;  }
  .rt-prop-hero__btn{ width:40px !important; height:40px !important; }
  .rt-prop-hero__btn svg{ width:40px !important; height:40px !important; }
  .analytics-recent-section{
    margin-top: 2rem;
    margin-bottom: 3rem;
  }
}
/* ── Stat cards mobile carousel ── */
.rt-stats-dots{ display:none; }
@media (max-width: 991.98px){
  .rt-stats-row{
    flex-wrap:nowrap !important; overflow-x:auto;
    scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; scrollbar-width:none;
  }
  .rt-stats-row::-webkit-scrollbar{ display:none; }
  .rt-stat-col{ flex:0 0 82% !important; max-width:82% !important; scroll-snap-align:center; }
  .rt-stats-dots{ display:flex; justify-content:center; gap:8px; margin-top:14px; }
  .rt-stats-dots .rt-dot{ width:8px; height:8px; border-radius:50%; background:#d0d0d0; cursor:pointer; transition:all .3s; }
  .rt-stats-dots .rt-dot.active{ width:22px; border-radius:20px; background:var(--rt-orange); }
}
/* ═══════ PROPERTIES DASHBOARD ═══════ */


/* pagination section design */
/* ── Pagination (RealTrixo design) ── */
.rt-pagination-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 20px;
    padding-top: 4px;
}
.rt-pagination-info {
    font-size: 16px;
    color: #7A7A7A;
}
.rt-pagination {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    list-style: none;
    margin: 0;
    padding: 0;
}

/* Previous / Next */
.rt-page-nav a,
.rt-page-nav span {
    display: inline-flex;
    align-items: center;
    gap: 0px;
    padding: 6px 10px;
    font-size: 18px;
    font-weight: 600;
    color: var(--rt-orange);
    text-decoration: none;
    border-radius: 6px;
    transition: background .2s ease;
}
.rt-page-nav a:hover {
    background: color-mix(in srgb, var(--rt-orange) 10%, #fff);
}
.rt-page-nav.disabled span {
    color: #C4C4C4;
    cursor: default;
    font-size: 18px;
    font-weight: 600;
}
.rt-cp-icon{
    width: 40px;
    height: 40px;
}
.rt-cp-icon svg {
    width: 18px;
    height: 18px;
    display: block;
    color: var(--rt-orange);
}
/* lead-source.svg ka hardcoded black fill override — theme color inherit karo */
.rt-cp-icon svg,
.rt-cp-icon svg * {
    fill: currentColor !important;
    stroke: currentColor !important;
}
/* Page numbers */
.rt-page-num a,
.rt-page-num span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    height: 32px;
    padding: 0 6px;
    font-size: 16px;
    color: #D3D3D3;
    text-decoration: none;
    font-weight: 400;
    transition: background .2s ease, color .2s ease;
}
.rt-page-num a:hover {

    color: var(--rt-orange);
}

/* Active page — orange circle */
.rt-page-num.active span {
    color: #222222;
    font-weight: 600;
}

/* Disabled dots (...) */
.rt-page-num.disabled span {
    color: #DADADA;
    background: transparent;
}

@media (max-width: 575.98px){
    .rt-pagination-wrap { justify-content: center; }
    .rt-pagination-info { width: 100%; text-align: center; }
}
/* Pagination arrows (SVG) */
.rt-page-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.rt-page-arrow svg {
    width: 18px;
    height: 18px;
}
.rt-page-arrow svg path {
    fill: var(--rt-orange);
    transition: fill .2s ease;
}

/* Disabled arrow (first/last page) — gray, tumhare disabled text ke saath match */
.rt-page-nav.disabled .rt-page-arrow svg path {
    fill: #C4C4C4;
}
/* pagination section design */


/* upcoming tasks css */
/* ── Task tabs (stat-card look, icon RIGHT side) ── */
.rt-task-tab {
    width: 100%;
    border: 0;
    background: #fff;
    justify-content: space-between;   /* label left, icon right */
    align-items: center;
    text-align: left;
    cursor: pointer;
}

/* ── To Dos header (title left | search + filter + add right) ── */
/* ── To Dos header (title left | search + filter + add right) ── */
/* Card container-query context ban jaata hai — header apni CARD ki width
   pe respond karega, viewport pe nahi (col-6 tang layouts fix) */
.card:has(> .rt-todos-header){
    container-type: inline-size;
}

.rt-todos-header{
    display:flex; align-items:center; flex-wrap:wrap; gap:14px 20px;
    padding:18px;
    background:#fff;
}
.rt-todos-header__title{ flex-shrink:0; }
.rt-todos-header__title svg{
    width:24px; height:24px; fill:var(--rt-orange);
}
.rt-todos-header__title svg path{ fill:var(--rt-orange) !important; }

/* Right group: search + filter + add */
.rt-todos-header__actions{
    display:flex; align-items:center; gap:12px;
    margin-left:auto; min-width:0;
}

/* Search — right group ke andar, fixed-ish width */
.rt-todos-search{
    width:300px; max-width:300px; flex-shrink:1; min-width:160px;
}

.rt-todos-filter{
    width:auto; min-width:130px; flex-shrink:0;
    border-radius:100px;
    height:45px;
    color:#7A7A7A;
    padding-left:18px; padding-right:34px;
}
.rt-todos-header__actions .btn{ flex-shrink:0; white-space:nowrap; }

/* ── 1366 laptop — search thodi chhoti ── */
@media (max-width: 1400px){
    .rt-todos-search{ width:220px; max-width:220px; }
}

/* ── CONTAINER 700–950px (detail pages, 1366 screens) ──
   Ek row mein hi rakho, bas search aur shrink ho jaye ── */
@container (max-width: 950px){
    .rt-todos-search{
        width:250px; max-width:250px; min-width:130px;
    }
    .rt-todos-header{ gap:12px; }
    .rt-todos-header__actions{ gap:10px; }
}
/* ── Tablet / mobile (≤991px) ── */
/* ── Tablet / mobile (≤991px) ── */
/* ── CONTAINER ≤ 900px (col-6, tang layouts) ──
   Row 1: title + filter + Add button | Row 2: search full-width neechay */
/* ── CONTAINER ≤ 700px (col-6, bahut tang layouts) ──
   Row 1: title + filter + Add button | Row 2: search full-width neechay */
@container (max-width: 700px){
    .rt-todos-header{ gap:12px; padding:14px; }

    .rt-todos-header__title{ order:1; }

    /* Actions group tod do — children direct header flex mein aa jayein */
    .rt-todos-header__actions{
        display:contents;
    }

    /* Filter + button — title ke saath top row pe right side */
    .rt-todos-filter{ order:2; margin-left:auto; min-width:110px; }

    /* Button bhi right push kare — jin headers mein filter NAHI hai
       (Work Orders, Keys, Certificates...) wahan button khud right jaye */
    .rt-todos-header__actions .btn{ order:3; margin-left:auto; }

    /* Lekin agar filter maujood hai (To Do, Viewings) to filter hi push
       karega — button ka auto margin hata do, filter ke saath juda rahe */
    .rt-todos-filter ~ .btn{ margin-left:0; }

    /* Search full width apni row mein (neechay) */
    .rt-todos-search{
        order:4;
        flex:0 0 100%; width:100%; max-width:100%;
    }
}

/* ── CONTAINER ≤ 480px (bahut tang) ── */
@container (max-width: 480px){
    .rt-todos-filter{ flex:1; min-width:0; margin-left:0; }
    .rt-todos-header__actions .btn{
        font-size:15px; padding:12px 16px;
    }
}

/* ── Fallback: purane browsers (container queries support nahi) ── */
@supports not (container-type: inline-size) {
    @media (max-width: 991.98px){
        .rt-todos-header{ gap:12px; padding:14px 4px; }
        .rt-todos-header__title{ order:1; }
        .rt-todos-header__actions{
            order:2; flex:0 0 100%; margin-left:0; flex-wrap:wrap;
        }
        .rt-todos-search{ flex:0 0 100%; width:100%; max-width:100%; }
        .rt-todos-filter{ flex:1; min-width:0; }
    }
}

/* Order flip — info pehle, icon baad mein (right) */
.rt-task-tab .rt-prop-stat-card__info { order: 1; }
.rt-task-tab .rt-prop-stat-card__icon { order: 2; }

/* Label single line, value nahi hai is tab mein */
.rt-task-tab .rt-prop-stat-card__label {
    font-weight: 600;
    line-height: 1.3;
}

/* Hover (non-active) — halka orange tint */
.rt-task-tab:not(.rt-prop-stat-card--active):hover {
    background: color-mix(in srgb, var(--rt-orange) 6%, #fff);
}

/* Active — orange card + white icon/text (rt-prop-stat-card--active se already
   aa raha hai, par button ke liye confirm kar dete hain) */
.rt-task-tab.rt-prop-stat-card--active {
    background: var(--rt-orange) !important;
}
.rt-task-tab.rt-prop-stat-card--active .rt-prop-stat-card__label {
    color: #fff !important;
}
.rt-task-tab.rt-prop-stat-card--active .rt-prop-stat-card__icon svg,
.rt-task-tab.rt-prop-stat-card--active .rt-prop-stat-card__icon svg path {
    fill: #fff !important;
}

/* Icon default color (non-active) — orange */
.rt-task-tab .rt-prop-stat-card__icon svg path {
    fill: var(--rt-orange);
    transition: fill .2s ease;
}
/* upcoming tasks css */

/* ═══════════════════════════════════════════
   SALES DASHBOARD
═══════════════════════════════════════════ */

/* ── Stat cards (setting-card layout, plain orange icon) ── */
.rt-sales-stat{ padding:24px; min-height:190px; }
.rt-sales-stat__icon{ font-size:34px; color:var(--rt-orange); line-height:1; }
.rt-sales-stat .rt-card__title{ font-size:18px; font-weight:600; color:#222222; }
.rt-sales-stat .rt-card__manage{ font-size:16px; color:#7A7A7A; margin-top:2px; }
.rt-sales-stat .rt-card__bottom{ font-size:12px; color:#AEAEAE; padding-top:3rem; }
.rt-sales-stat:hover{ background: color-mix(in srgb, var(--rt-orange) 8%, #fff); }
/* ── Total Sales: doughnut + legend + sparklines ── */
.rt-sales-analytics{
    display:flex; align-items:center; gap:32px; flex-wrap:wrap; margin:2rem 0px 2rem 0px;
}
.rt-sales-doughnut{ flex:0 0 auto; }
.rt-sales-doughnut .rt-doughnut-wrap{ width:300px; max-width:300px; margin:0; }
.rt-sales-doughnut .rt-doughnut-center strong{ font-size:24px; font-weight: 600; color: #222222;}

.rt-sales-legend{
    flex:1; min-width:280px;
    display:grid; grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:26px 40px;
}
.rt-contacts-legend{
    flex:1; min-width:280px;
    display:grid; grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:26px 40px;
    padding: 3rem 0rem 3rem 0rem;
}
.rt-sales-legend__item{ min-width:0; }
.rt-sales-legend__head{ display:flex; align-items:center; gap:10px; }
.rt-sales-legend__dot{ width:12px; height:12px; border-radius:50%; flex-shrink:0; }
.rt-sales-legend__label{ font-size:16px; color:#222222; font-weight:500; }
.rt-sales-legend__value{ font-size:16px; color:#7A7A7A; margin:6px 0 6px 22px; }
.rt-sales-legend__spark{ height:60px; position:relative; }
.rt-sales-legend__spark canvas{ height:60px !important; }

/* ── Top Sales price ── */
.rt-sales-price{ font-size:16px; font-weight:400; color:var(--rt-orange); flex-shrink:0; }

/* ── Sales stat card: active tab highlight ── */
.rt-sales-stat--active,
.rt-sales-stat--active:hover{
    background: var(--rt-orange) !important;
}
.rt-sales-stat--active .rt-card__title,
.rt-sales-stat--active .rt-card__manage,
.rt-sales-stat--active .rt-card__bottom{
    color: #fff !important;
}
.rt-sales-stat--active .rt-prop-stat-card__icon svg,
.rt-sales-stat--active .rt-prop-stat-card__icon svg path,
.rt-sales-stat--active .rt-prop-stat-card__icon svg rect,
.rt-sales-stat--active .rt-prop-stat-card__icon svg circle,
.rt-sales-stat--active .rt-prop-stat-card__icon svg polygon{
    fill: #fff !important;
}

/* ── Responsive ── */
@media (max-width: 1400px){
    .rt-sales-stat{ padding:18px; min-height:170px; }
    .rt-sales-stat__icon{ font-size:30px; }
    .rt-sales-stat .rt-card__title{ font-size:16px; }
    .rt-sales-stat .rt-card__manage{ font-size:13px; }

    .rt-sales-doughnut .rt-doughnut-wrap{ width:240px; max-width:240px; }
    .rt-sales-doughnut .rt-doughnut-center strong{ font-size:22px; }
    .rt-sales-legend{ gap:20px 28px; }
    .rt-contacts-legend{ gap:20px 28px; }
    .rt-sales-legend__label{ font-size:14px; }
    .rt-sales-legend__value{ font-size:14px; }
}

@media (max-width: 991.98px){
    .rt-sales-analytics{ flex-direction:column; align-items:stretch; gap:24px; }
    .rt-sales-doughnut{ align-self:center; }
    .rt-sales-doughnut .rt-doughnut-wrap{ width:260px; max-width:260px; }
}

@media (max-width: 575.98px){
    .rt-sales-legend{ grid-template-columns:1fr; gap:18px; }
    .rt-contacts-legend{ grid-template-columns:1fr; gap:18px; }
    .rt-sales-doughnut .rt-doughnut-wrap{ width:220px; max-width:220px; }
    .rt-sales-stat{ min-height:auto; }
    .btns-full-height-sm, .btns-full-height-sm-div{ width: 100%; margin:0.5rem 0rem 0rem 0rem; }
    .table-card-title-section{ margin:0rem 0rem 0.5rem 0rem; }
}
/* ═══════════════════════════════════════════
   SALES DASHBOARD
═══════════════════════════════════════════ */



/* ============================================================
   User Profile
   ============================================================ */
.rt-user-profile{
    --rt-line:#e9eaee;
    --rt-radius:10px;
    margin:0 auto; padding:4px 4px 34px;
}
.rt-user-profile *{ box-sizing:border-box; }

/* ── Banner — background IMAGE (gradient fallback ke saath) ── */
.rt-up-banner{
    height:140px; border-radius:var(--rt-radius); overflow:hidden;
    background:
        url('/assets/img/users-banner.svg') center/cover no-repeat;
}

/* ── Head — avatar + name/role BESIDE it (banner ko overlap karta hai) ── */
.rt-up-head{
    display:flex; align-items:flex-start; gap:18px;
    margin:-60px 0 22px 8px;
}
/* Avatar block — avatar + upload button (avatar ke neeche) */
.rt-up-avatar-block{ display:flex; flex-direction:column; align-items:center; gap:10px; flex-shrink:0; }
.rt-up-upload-btn{
    border:1px solid var(--rt-orange); background:#fff; color:var(--rt-orange);
    font-size:13px; font-weight:500; padding:6px 14px; border-radius:8px;
    cursor:pointer; display:inline-flex; align-items:center; gap:6px; transition:.18s; white-space:nowrap;
}
.rt-up-upload-btn:hover{ background:var(--rt-orange); color:#fff; }
.rt-up-img-error{ margin-top:2px; }
.rt-up-avatar-wrap{
    width:132px; height:132px; border-radius:50%; flex-shrink:0;
    border:5px solid #fff; box-shadow:0 10px 26px -12px rgba(0,0,0,.4);
    overflow:hidden; background:#fff;
}
.rt-up-avatar{ width:100%; height:100%; object-fit:cover; display:block; }
.rt-up-identity{ margin-top:80px; }
.rt-up-name{ margin:0; font-size:18px; font-weight:600; color:var(--rt-orange); line-height:1.2; }
.rt-up-role{ display:inline-block; margin-top:2px; font-size:16px; color:#222222; font-weight:400; }

/* ── Body grid — full-height columns ── */
/* ── Body grid — dono columns barabar height (stretch) ── */
.rt-up-body{
    display:grid; grid-template-columns:350px 1fr; gap:26px;
    align-items:stretch;
}

/* ── LEFT aside — white card, full height ── */
.rt-up-aside{
    background:#fff; border-radius:var(--rt-radius); padding:26px;
    display:flex; flex-direction:column;
    height:100%;                 /* grid stretch → right form column jitni height */
}
.rt-up-card-title{ margin:0 0 18px; font-size:18px; font-weight:600; color:#222222; }
.rt-up-aside .rt-up-desc{ margin:0; font-size:16px; font-weight: 400; line-height:1.7; color:#7A7A7A; }
.rt-up-divider{ border:0; border-top:1px solid var(--rt-line); margin:4rem 0; }
.rt-up-divider--push{ margin-top:auto; }   /* social ko neeche push (full-height look) */
.rt-up-contact{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:16px; }
.rt-up-contact li{ display:flex; align-items:center; gap:12px; font-weight: 400; font-size:18px; color:#222222; }
.rt-up-contact li a{ color:#222222; font-size: 18px; font-weight: 400; text-decoration:none; word-break:break-word; }
.rt-up-contact li a:hover{ color:var(--rt-orange); }
.rt-up-ic{ width:30px; height:30px; flex:0 0 30px; border-radius:50%; display:grid; place-items:center; color:var(--rt-orange); font-size:17px; }
.rt-up-social{ display:flex; gap:12px; }
.rt-up-social a{ width:38px; height:38px; border-radius:50%; display:grid; place-items:center; border:1px solid var(--rt-line); color:#6b7076; font-size:17px; text-decoration:none; transition:.18s; }
.rt-up-social a:hover{ background:var(--rt-orange); border-color:var(--rt-orange); color:#fff; transform:translateY(-2px); }

/* ── RIGHT form — NO white background ── */
.rt-up-main{ background:transparent; padding:2px 0 0; }

/* Password eye (default form-control ke saath) */
.rt-up-pass{ position:relative; }
.rt-up-eye{ position:absolute; right:14px; top:50%; transform:translateY(-50%); cursor:pointer; color:#8b9096; z-index:3; }

/* Role lock note */
.rt-up-lock-note{ font-size:11.5px; color:#9aa0a6; margin-top:6px; display:flex; align-items:center; gap:5px; }

/* Action buttons row (buttons khud .btn .btn-primary se style hote hain) */
.rt-up-actions{ display:flex; justify-content:flex-end; gap:12px; margin-top:10px; }

/* ── Responsive ── */
@media (max-width:991.98px){
    .rt-up-aside{ height:auto; overflow:visible; }
    .rt-up-body{ grid-template-columns:1fr; gap:20px; min-height:auto; }
}
@media (max-width:575.98px){
    .rt-up-banner{ height:100px; }
    .rt-up-head{ flex-direction:column; align-items:flex-start; gap:10px; margin-top:-60px; }
    .rt-up-avatar-wrap{ width:112px; height:112px; }
    .rt-up-identity{ padding-bottom:0; }
    .rt-up-name{ font-size:20px; }
    .rt-up-aside{ padding:20px 18px; }
    .rt-up-actions{ flex-direction:column-reverse; }
    .rt-up-actions .btn{ width:100%; }
}
/* ============================================================
   User Profile
   ============================================================ */


/* ============================================================
Control Panel dashboard
============================================================ */

/* Section grid — heading full-width, cards auto-flow */
.rt-dash-grid{ display:grid; gap:18px; align-items:stretch; }
.rt-dash-grid > .rt-topbar__left-headings{ grid-column:1 / -1; }
.rt-dash-grid > [class*="col-"]{ max-width:none; width:auto; flex:none; padding:0; margin:0; }

.rt-dash-grid--settings{ grid-template-columns:repeat(auto-fill, minmax(200px, 1fr)); } /* ~6/row */
.rt-dash-grid--modules { grid-template-columns:repeat(auto-fill, minmax(250px, 1fr)); } /* ~5/row */

.rt-dash-grid .rt-dash-card{ height:100%; margin:0; }

/* Setting-card icon (top) — remix <i> ya SVG dono orange */
/* Setting-card icon (top) — sales ki tarah rt-prop-stat-card__icon; <i> + SVG dono orange */
.rt-dash-grid .rt-sales-stat .rt-prop-stat-card__icon i{ font-size:34px; color:var(--rt-orange); line-height:1; }
.rt-dash-grid .rt-sales-stat .rt-prop-stat-card__icon svg{ width:34px; height:34px; fill:var(--rt-orange); }
.rt-dash-grid .rt-sales-stat .rt-prop-stat-card__icon svg path{ fill:var(--rt-orange) !important; }

/* Module-card icon (left) — remix <i> ko orange + size (SVG already handled) */
.rt-dash-grid .rt-prop-stat-card__icon i{ font-size:34px; color:var(--rt-orange); line-height:1; }

/* Module subtext (Landlords/Properties) */
.rt-dash-card__sub{ font-size:12px; color:#AEAEAE; margin-top:2px; }

/* Responsive — chhoti screen pe kam columns */
@media (max-width:575.98px){
    .rt-dash-grid--settings,
    .rt-dash-grid--modules{ grid-template-columns:repeat(auto-fill, minmax(150px, 1fr)); }
}

/* ============================================================
Control Panel dashboard
============================================================ */

/* ============================================================
   Contacts dashboard — sales design reuse + 3-col legend
   ============================================================ */

/* Legend 3 columns (6 items → 2 rows × 3) */
.rt-contacts-legend{ grid-template-columns:repeat(3, minmax(0, 1fr)); }

/* Doughnut card — standalone, center */
.rt-contacts-doughnut{ display:flex; justify-content:center; margin:2rem 0; }
.rt-contacts-doughnut .rt-doughnut-wrap{ width:280px; max-width:100%; margin:0; }

@media (max-width:1400px){ .rt-contacts-legend{ gap:20px 24px; } }
@media (max-width:991.98px){ .rt-contacts-legend{ grid-template-columns:repeat(2, minmax(0, 1fr)); } }
@media (max-width:575.98px){ .rt-contacts-legend{ grid-template-columns:1fr; } }

/* ============================================================
   Contacts dashboard — sales design reuse + 3-col legend
   ============================================================ */



/* ===== Accounts tab cards (Clients / Money IN / Money Out) ===== */
.rt-acct-tab {
    justify-content: space-between;
    min-height: 100px;
}
.rt-acct-tab__label { font-size: 1.05rem; font-weight: 700; }
.rt-acct-tab .rt-prop-stat-card__info { margin: 0; }
.rt-acct-tab__icon svg { width: 44px; height: 44px; }

/* ===== Client account card ===== */
.rt-acct-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.rt-acct-head__title { display: flex; align-items: center; gap: 10px; margin: 0; font-size: 1.35rem; font-weight: 700; }
.rt-acct-head__title svg { width: 22px; height: 22px; }
.rt-acct-divider { border-bottom: 1px solid #eceff3; margin: 20px 0 24px; }

/* Filter strip */
.rt-acct-filterbar {
    display: flex; align-items: center; justify-content: space-between;
    gap: 14px; flex-wrap: wrap;
    background: #f7f8f9; border-radius: 12px; padding: 14px 18px; margin-bottom: 24px;
}
.rt-acct-filterbar__left { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.rt-acct-branch {
    display: inline-flex; align-items: center; gap: 8px;
    background: #fff; border: 1px solid #e3e6ea; border-radius: 50px; padding: 6px 18px;
}
.rt-acct-branch i { color: #6b7280; }
.rt-acct-branch select {
    border: 0; background: transparent; outline: none; box-shadow: none;
    font-size: .9rem; cursor: pointer; padding: 0; width: auto;
}
.rt-acct-pill-warn {
    background: #FFE49B; color: #7a5a00; font-weight: 600;
    padding: 8px 18px; border-radius: 50px; font-size: .875rem;
}
.rt-acct-balance { font-size: 1.5rem; font-weight: 700; color: #1a1a1a; }

/* Transaction rows */
.bank-date-header { font-size: .9rem; color: #8b929c; margin: 20px 0 10px; }
.bank-date-header:first-child { margin-top: 0; }

.rt-txn-row {
    display: flex; align-items: center; gap: 16px;
    border: 1px solid #eceff3; border-radius: 12px;
    padding: 16px 20px; margin-bottom: 12px; background: #fff;
}
.rt-txn-avatar {
    width: 52px; height: 52px; border-radius: 50%; flex-shrink: 0;
    background: #d9dbde; display: flex; align-items: center; justify-content: center;
    font-weight: 600; color: #fff; font-size: .95rem;
}
.rt-txn-main { flex: 1 1 auto; min-width: 0; }
.rt-txn-title { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.rt-txn-name { font-weight: 700; font-size: 1rem; color: #1a1a1a; }

.rt-txn-badge { padding: 5px 14px; border-radius: 50px; font-size: .78rem; font-weight: 600; }
.rt-txn-badge--unrec { background: #FFE49B; color: #7a5a00; }
.rt-txn-badge--rec   { background: #2F80ED; color: #fff; }

.rt-txn-meta { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; margin-top: 6px; font-size: .86rem; color: #5c636d; }
.rt-txn-meta__dot::before { content: "•"; color: var(--rt-theme-color, #FF5A00); margin-right: 6px; }
.rt-txn-meta__client { display: inline-flex; align-items: center; gap: 8px; }
.rt-txn-meta__ph { width: 22px; height: 22px; border-radius: 50%; background: #cfd2d6; display: inline-block; }

.rt-txn-right { text-align: right; flex-shrink: 0; }
.rt-txn-amt { display: inline-block; padding: 5px 12px; border-radius: 8px; font-weight: 700; font-size: .9rem; color: #fff; }
.rt-txn-amt--in  { background: var(--rt-theme-color, #FF5A00); }
.rt-txn-amt--out { background: #1f2937; }
.rt-txn-bal { margin-top: 6px; font-size: .85rem; color: #5c636d; }

.rt-txn-menu .btn { border: 0; background: transparent; color: var(--rt-theme-color, #FF5A00); padding: 4px 8px; }

.rt-txn-breakdown { border-top: 1px dashed #e3e6ea; margin-top: 12px; padding-top: 10px; font-size: .82rem; color: #5c636d; }
.rt-txn-breakdown__item { display: flex; justify-content: space-between; gap: 12px; padding: 3px 0; }


/* ===== Pending / Received pill tabs ===== */
.rt-acct-tabs {
    display: inline-flex;
    background: #fff;
    border: 1px solid #e3e6ea;
    border-radius: 50px;
    padding: 4px;
}
.rt-acct-tabs__item {
    padding: 7px 22px;
    border-radius: 50px;
    font-size: .9rem;
    font-weight: 600;
    color: #6b7280;
    text-decoration: none;
    transition: background .15s ease, color .15s ease;
    white-space: nowrap;
}
.rt-acct-tabs__item:hover { color: #1a1a1a; }
.rt-acct-tabs__item--active {
    background: var(--rt-theme-color, #FF5A00);
    color: #fff;
}
.rt-acct-tabs__item--active:hover { color: #fff; }

/* ===== Sort pill ===== */
.rt-acct-sort {
    display: inline-flex; align-items: center; gap: 8px;
    background: #fff; border: 1px solid #e3e6ea; border-radius: 50px;
    padding: 9px 20px; font-size: .9rem; font-weight: 500; color: #1a1a1a;
}
.rt-acct-sort:hover { border-color: var(--rt-theme-color, #FF5A00); }

/* ===== Footer: results count + pagination ===== */
.rt-acct-foot {
    display: flex; align-items: center; justify-content: space-between;
    gap: 14px; flex-wrap: wrap; margin-top: 24px;
}
.rt-acct-foot__count { font-size: .9rem; color: #5c636d; }
.rt-acct-foot .pagination { margin-bottom: 0; }


@media (max-width: 767.98px) {
    .rt-txn-row { flex-wrap: wrap; }
    .rt-txn-right { width: 100%; text-align: left; }
    .rt-acct-balance { width: 100%; text-align: right; }
}

/* ===== Accounts tab cards (Clients / Money IN / Money Out) ===== */
/* ── Mega dropdown — button ke neeche, screen ke center mein ──
   position: fixed  → containing block = screen (left: 50% = asal center)
   top: auto        → vertical position button ke neeche (static position)  */
.mega-dropdown {
    position: fixed !important;
    top: auto !important;
    bottom: auto !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    margin: 8px 0 0 !important;

    /* 100% = screen width (100vw ki tarah scrollbar count nahi hoti) */
    width: min(1000px, calc(100% - 24px)) !important;
    max-width: none !important;
    min-width: 0 !important;

    max-height: min(70vh, 600px);
    overflow-y: auto;
    overflow-x: hidden;
    overscroll-behavior: contain;
    z-index: 1055;

    background-color: #fff !important;
    border: 1px solid #e9ecef;
    border-radius: 10px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
}

/* Column separators */
.mega-dropdown__col {
    border-right: 1px solid #e9ecef;
    padding-right: 1rem;
}

/* Tablet & mobile — columns stack, centering waise hi rehti hai */
@media (max-width: 991.98px) {
    .mega-dropdown {
        padding: 1rem !important;
        max-height: min(75vh, 520px);
    }

    .mega-dropdown__col {
        border-right: 0;
        padding-right: 0;
        border-bottom: 1px solid #e9ecef;
        padding-bottom: 1rem;
    }
}

@media (max-width: 575.98px) {
    .mega-dropdown {
        width: calc(100% - 16px) !important;
    }

    .mega-dropdown h6 {
        font-size: 0.75rem;
        margin-bottom: 0.5rem !important;
    }
}

.mega-dropdown .action-link {
    display: flex;
    align-items: center;
    padding: 6px 8px;
    border-radius: 6px;
    color: inherit;
    text-decoration: none;
    white-space: nowrap;
    background-color: transparent;
    transition: background-color 0.15s ease;
}

.mega-dropdown .action-link:hover {
    background-color: #f5f5f7;
}

.mega-dropdown .action-link i {
    flex-shrink: 0;
}

/* Parent containers dropdown ko clip na karein */
.user-profile,
.user-profile .profile-img,
.user-profile .btn-group,
.property-detail,
.profile-contact {
    overflow: visible !important;
}

.user-profile .btn-group,
.user-profile .dropdown {
    position: relative;
}


    /* Header ki right side — filters + button ek hi line mein */
    .rt-header-actions {
        display: flex;
        align-items: center;
        gap: 10px;
        flex-wrap: nowrap;
        margin-left: auto;
    }

    /* Bootstrap ka width:100% override — warna select poori row le leta hai */
    .rt-header-actions .rt-filter-select {
        width: auto !important;
        flex: 0 0 auto;
        min-width: 160px;
        max-width: 200px;
    }

    .rt-header-actions .rt-header-back-btn {
        flex: 0 0 auto;
        white-space: nowrap;
    }

    .rt-table-foot td {
        background-color: #F4F4F4;
        border-top: 1px solid #e9ecef;
    }
    /* Title ko squeeze hone se bachao */
    .table-card-title-section { min-width: 0; }
    .table-card-title { white-space: nowrap; }

    @media (max-width: 991.98px) {
        .rt-header-actions .rt-filter-select { min-width: 140px; max-width: 160px; }
    }

    @media (max-width: 767.98px) {
        .rt-header-actions {
            flex-wrap: wrap;
            width: 100%;
            margin-left: 0;
        }
        .rt-header-actions .rt-filter-select {
            flex: 1 1 45%;
            min-width: 0;
            max-width: none;
        }
        .rt-header-actions .rt-header-back-btn { flex: 1 1 100%; text-align: center; }
        .table-card-title { white-space: normal; }
    }


/* ── Topbar nav search ───────────────────────────── */
.rt-navsearch { position: relative; }

.rt-navsearch__panel {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    right: 0;
    z-index: 1050;
    max-height: 340px;
    overflow-y: auto;
    background: color-mix(in srgb, var(--rt-orange) 10%, #fff);
    border: 1px solid rgba(0, 0, 0, .08);
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .12);
    padding: 6px;
}

.rt-navsearch__item {
    display: block;
    padding: 8px 10px;
    border-radius: 6px;
    color: #222222;
    text-decoration: none;
    line-height: 1.3;
    cursor: pointer;
}

.rt-navsearch__item:hover,
.rt-navsearch__item.is-active {
    background: color-mix(in srgb, var(--rt-orange) 10%, #fff);
    color: #222222;
}

.rt-navsearch__label { display: block; font-size: 14px; }
.rt-navsearch__label mark {
    background: transparent;
    font-weight: 600;
    padding: 0;
    color: #222222;
}

.rt-navsearch__group {
    display: block;
    font-size: 11px;
    opacity: .6;
    margin-top: 1px;
}

.rt-navsearch__empty {
    padding: 10px;
    font-size: 13px;
    opacity: .6;
}

@media (max-width: 767.98px) {
    .rt-navsearch__panel { max-height: 260px; }
}
/* newly imnplemented css */


/* ── Table header responsive (tab view: 576px–991px) ── */
@media (min-width: 576px) and (max-width: 991.98px) {
    .table-header {
        flex-wrap: wrap;
        row-gap: 12px;
    }
    .table-header .rt-table-search {
        flex: 1 1 100%;
        order: 2;
    }
    .table-header .table-header-actions {
        order: 3;
        width: 100%;
        justify-content: flex-end;
    }
    .table-header .table-card-title-section {
        order: 1;
    }

    #propertiesPagination,
    #applicantsPagination,
    #rolesPagination,
    #modulesPagination,
    #valuationsPagination,
    #lettingsPagination,
    #developmentsPagination {
        display: flex;
        justify-content: center;
        margin-top: 1rem;
    }

    /* Andar ke nav / pagination / div ko bhi center karo */
    #propertiesPagination nav,
    #applicantsPagination nav,
    #rolesPagination nav,
    #modulesPagination nav,
    #valuationsPagination nav,
    #propertiesPagination .pagination,
    #applicantsPagination .pagination,
    #rolesPagination .pagination,
    #modulesPagination .pagination,
    #valuationsPagination .pagination,
    #propertiesPagination > div,
    #applicantsPagination > div,
    #rolesPagination > div,
    #modulesPagination > div,
    #valuationsPagination > div {
        display: flex;
        justify-content: center;
        width: 100%;
        margin: 0;
    }
}
.table-header-actions .btn {
    white-space: nowrap;
}

/* notifications */
.rt-notif__badge{position:absolute;top:-4px;right:-4px;background:#e53935;color:#fff;font-size:10px;
    min-width:16px;height:16px;line-height:16px;border-radius:9px;text-align:center;padding:0 4px;font-weight:600;}
.rt-notif__panel{width:340px;max-width:92vw;border:0;box-shadow:0 8px 30px rgba(0,0,0,.12);border-radius:12px;overflow:hidden;margin-top:.5rem;}
.rt-notif__head{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid #eee;font-weight:600;}
.rt-notif__markall{font-size:12px;font-weight:500;text-decoration:none;}
.rt-notif__list{max-height:360px;overflow-y:auto;}
.rt-notif__item{display:flex;gap:10px;align-items:flex-start;padding:12px 16px;border-bottom:1px solid #f3f3f3;
    text-decoration:none;color:inherit;position:relative;}
.rt-notif__item:hover{background:#f8f9fa;}
.rt-notif__item.is-unread{background:#eef4ff;}
.rt-notif__icon i{font-size:18px;color:#5a6acf;}
.rt-notif__body{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0;}
.rt-notif__title{font-weight:600;font-size:13px;}
.rt-notif__text{font-size:12px;color:#666;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.rt-notif__time{font-size:11px;color:#999;}
.rt-notif__dot{width:8px;height:8px;border-radius:50%;background:#e53935;margin-top:6px;flex-shrink:0;}
.rt-notif__empty{padding:24px 16px;text-align:center;color:#999;font-size:13px;}
.rt-notif__foot{display:block;text-align:center;padding:10px;border-top:1px solid #eee;font-size:13px;
font-weight:500;text-decoration:none;}
/* notifications */

