
    div.ez-toc-widget-sticky-container {
        padding: 0;
        position: relative;
        top: 30px; /* Default top position to prevent auto positioning */
        transition: all 0.3s ease;
    }

    /* Sticky state styles */
    div.ez-toc-widget-sticky-container.is_stuck {
        position: fixed !important;
        z-index: 9999;
        box-shadow: 0 2px 10px rgba(0,0,0,0.1);
        background: #fff;
        border-radius: 4px;
        max-height: 80vh;
        overflow-y: auto;
    }


    div.ez-toc-widget-sticky-container ul {
        display: block;
    }

    div.ez-toc-widget-sticky-container li {
        border: none;
        padding: 0;
    }

    div.ez-toc-widget-sticky-container ul.ez-toc-widget-sticky-list {
        padding: 0;
        margin: 0;
    }

    #ez-toc-widget-sticky-container ul ul,
    .ez-toc div.ez-toc-widget-sticky-container ul ul {
        margin-left: 1.5em;
    }

    div.ez-toc-widget-sticky-container,
    div.ez-toc-widget-sticky-container li {
        background: none;
        list-style: none none;
        line-height: 1.6;
        margin: 0;
        z-index: 1;
    }


    .ez-toc-widget-sticky-container ul.ez-toc-widget-sticky-list li::before {
        content: ' ';
        position: absolute;
        left: 0;
        right: 0;
        height: 30px;
        line-height: 30px;
        z-index: -1;
    }

    .ez-toc-widget-sticky-container ul.ez-toc-widget-sticky-list li.active > a{
        background-color: #EDEDED;
    }

    .ez-toc-widget-sticky-container li.active > a {
        font-weight: 900;
    }

    /* Ensure child list items don't inherit active state from parent */
    .ez-toc-widget-sticky-container li.active li {
        background-color: transparent !important;
    }

    .ez-toc-widget-sticky-container li.active li > a {
        font-weight: normal !important;
    }

    /* Only direct children of active li should be affected */
    .ez-toc-widget-sticky-container li.active > ul > li {
        background-color: transparent;
    }

    .ez-toc-widget-sticky-container li.active > ul > li > a {
        font-weight: normal;
    }

    #ez-toc-widget-sticky-container label.cssicon {
        height: 30px;
    }

    #ez-toc-widget-sticky-container input[type="checkbox"]:checked + nav {
        opacity: 0;
        max-height: 0;
        border: none;
        display: none;
    }

    #ez-toc-widget-sticky-container nav ul.eztoc-widget-sticky-visibility-hide-by-default {
        display: none;
    }

    #ez-toc-widget-sticky-container label.cssicon  {
        float: right;
        position: relative;
        font-size: 16px;
        padding: 0;
        border: 1px solid #999191;
        border-radius: 5px;
        cursor: pointer;
        left: 10px;
        width: 35px;
    }


    .ez-toc-widget-sticky-container ul li a {
        padding-left: 10px;
        display: inline-flex;
        align-items: stretch;
        flex-wrap: nowrap;
    }

    .ez-toc-widget-sticky-container ul.ez-toc-widget-sticky-list li.active {
        height: auto !important;
    }


    .ez-toc-title,
    .ez-toc-widget-sticky-title-toggle {
        display: inline;
        text-align: left;
        vertical-align: middle;
    }

    .ez-toc-widget-sticky-wrap-left {
        float: left;
        margin-right: 10px;
    }

    .ez-toc-widget-sticky-wrap-right {
        float: right;
        margin-left: 10px;
    }


    .ez-toc-widget-sticky-btn {
        display: inline-block;
        padding: 6px 12px;
        margin-bottom: 0;
        font-size: 14px;
        font-weight: normal;
        line-height: 1.428571429;
        text-align: center;
        white-space: nowrap;
        vertical-align: middle;
        cursor: pointer;
        background-image: none;
        border: 1px solid transparent;
        border-radius: 4px;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        -o-user-select: none;
        user-select: none
    }

    .ez-toc-widget-sticky-btn:focus {
        outline: thin dotted #333;
        outline: 5px auto -webkit-focus-ring-color;
        outline-offset: -2px
    }

    .ez-toc-widget-sticky-btn:hover,
    .ez-toc-widget-sticky-btn:focus {
        color: #333;
        text-decoration: none
    }

    .ez-toc-widget-sticky-btn:active,
    .ez-toc-widget-sticky-btn.active {
        background-image: none;
        outline: 0;
        -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
        box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125)
    }

    .ez-toc-widget-sticky-btn-default {
        color: #333;
        background-color: #fff;
        border-color: #ccc
    }

    .ez-toc-widget-sticky-btn-default:hover,
    .ez-toc-widget-sticky-btn-default:focus,
    .ez-toc-widget-sticky-btn-default:active,
    .ez-toc-widget-sticky-btn-default.active {
        color: #333;
        background-color: #ebebeb;
        border-color: #adadad
    }

    .ez-toc-widget-sticky-btn-default:active,
    .ez-toc-widget-sticky-btn-default.active {
        background-image: none
    }

    .ez-toc-widget-sticky-btn-sm,
    .ez-toc-widget-sticky-btn-xs {
        padding: 5px 10px;
        font-size: 12px;
        line-height: 1.5;
        border-radius: 3px
    }

    .ez-toc-widget-sticky-btn-xs {
        padding: 1px 5px
    }

    .ez-toc-widget-sticky-btn-default {
        text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
        -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075)
    }

    .ez-toc-widget-sticky-btn-default:active {
        -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
        box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125)
    }

    .ez-toc-widget-sticky-btn:active,
    .btn.active {
        background-image: none
    }

    .ez-toc-widget-sticky-btn-default {
        text-shadow: 0 1px 0 #fff;
        background-image: -webkit-gradient(linear, left 0, left 100%, from(#fff), to(#e0e0e0));
        background-image: -webkit-linear-gradient(top, #fff 0, #e0e0e0 100%);
        background-image: -moz-linear-gradient(top, #fff 0, #e0e0e0 100%);
        background-image: linear-gradient(to bottom, #fff 0, #e0e0e0 100%);
        background-repeat: repeat-x;
        border-color: #dbdbdb;
        border-color: #ccc;
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);
        filter: progid:DXImageTransform.Microsoft.gradient(enabled=false)
    }

    .ez-toc-widget-sticky-btn-default:hover,
    .ez-toc-widget-sticky-btn-default:focus {
        background-color: #e0e0e0;
        background-position: 0 -15px
    }

    .ez-toc-widget-sticky-btn-default:active,
    .ez-toc-widget-sticky-btn-default.active {
        background-color: #e0e0e0;
        border-color: #dbdbdb
    }

    .ez-toc-widget-sticky-pull-right {
        float: right !important;
    }

    .ez-toc-widget-sticky-glyphicon {
        position: relative;
        top: 1px;
        display: inline-block;
        font-family: 'Glyphicons Halflings';
        -webkit-font-smoothing: antialiased;
        font-style: normal;
        font-weight: normal;
        line-height: 1;
        -moz-osx-font-smoothing: grayscale
    }

    .ez-toc-widget-sticky-glyphicon:empty {
        width: 1em
    }

    .ez-toc-widget-sticky-toggle i.ez-toc-widget-sticky-glyphicon {
        font-size: 16px;
        margin-left: 2px;
    }

    .ez-toc-widget-sticky-wrap-center {
        margin: 0 auto;
    }

    .ez-toc-widget-sticky-toggle #item {
        position: absolute;
        left: -999em;
    }

    label.cssicon .ez-toc-widget-sticky-glyphicon:empty {
        font-size: 16px;
        margin-left: 2px;
    }

    label.cssiconcheckbox {
        display: none;
    }
    .ez-toc-widget-sticky-container nav{
        max-height: 60vh;
        overflow: auto;
    }

    /* Sticky state styles */
    .ez-toc-widget-sticky-container.is_stuck {
        position: fixed !important;
        z-index: 9999;
        border-radius: 4px;
        max-width: 100%;
        min-width: 300px;
        width: auto;
    }

    .ez-toc-widget-sticky-container.is_stuck nav {
        max-height: 60vh;
        overflow-y: auto;
    }

    /* Ensure proper positioning when sticky */
    .ez-toc-widget-sticky-container.is_stuck .widgettitle {
        padding: 10px;
        margin: 0 0 10px 0;
        border-radius: 4px 4px 0 0;
        
    }

    .ez-toc-widget-sticky-container.is_stuck nav {
        padding: 10px;
    }

    /* Disable sticky on mobile devices */
    @media (max-width: 768px) {
        .ez-toc-widget-sticky-container.is_stuck {
            position: static !important;
            top: auto !important;
            left: auto !important;
            right: auto !important;
            max-width: none;
            width: auto;
            z-index: auto;
            background: none;
            border: none;
            border-radius: 0;
            box-shadow: none;
        }
        
        .ez-toc-widget-sticky-container.is_stuck nav {
            max-height: none;
            overflow: visible;
        }
        
        .ez-toc-widget-sticky-container.is_stuck .ez-toc-widget-sticky-title {
            padding: 0;
            border-bottom: none;
            margin: 0;
            background: none;
            border-radius: 0;
        }
        
        .ez-toc-widget-sticky-container.is_stuck nav {
            padding: 0;
        }
        
        /* Hide sticky widget on mobile when not in overlay mode */
        .ez-toc-widget-sticky-container:not(.mobile-overlay) {
            display: none !important;
        }
        
        /* Ensure mobile overlay styles are applied */
        .ez-toc-widget-sticky-container.mobile-overlay {
            position: fixed !important;
            top: 0 !important;
            left: 0 !important;
            right: 0 !important;
            bottom: 0 !important;
            width: 100% !important;
            max-width: 100% !important;
            height: 100vh !important;
            z-index: 10001 !important;
            background: rgba(0,0,0,0.8) !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
            padding: 20px !important;
            box-sizing: border-box !important;
            border: none !important;
            border-radius: 0 !important;
            box-shadow: none !important;
            opacity: 0;
            visibility: hidden;
            transition: opacity 0.3s ease, visibility 0.3s ease;
        }
        
        .ez-toc-widget-sticky-container.mobile-overlay.show {
            opacity: 1;
            visibility: visible;
        }
        
        .ez-toc-widget-sticky-container.mobile-overlay .ez-toc-widget-sticky-content {
            background: white;
            border-radius: 12px;
            max-width: 90%;
            max-height: 80vh;
            width: 100%;
            overflow: hidden;
            display: flex;
            flex-direction: column;
            box-shadow: 0 10px 30px rgba(0,0,0,0.3);
            position: relative;
        }
        
        .ez-toc-widget-sticky-container.mobile-overlay .ez-toc-widget-sticky-title {
            padding: 15px 20px !important;
            border-bottom: 1px solid #eee !important;
            margin: 0 !important;
            background: #f9f9f9 !important;
            border-radius: 12px 12px 0 0 !important;
            font-size: 18px !important;
            font-weight: bold !important;
        }
        
        .ez-toc-widget-sticky-container.mobile-overlay nav {
            padding: 20px !important;
            max-height: 60vh !important;
            overflow-y: auto !important;
            flex: 1;
        }
        
        .ez-toc-widget-sticky-container.mobile-overlay .ez-toc-mobile-close-btn {
            position: absolute;
            top: 15px;
            right: 15px;
            background: none;
            border: none;
            font-size: 24px;
            cursor: pointer;
            color: #666;
            padding: 0;
            width: 30px;
            height: 30px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            transition: background-color 0.2s ease;
            z-index: 1;
        }
        
        .ez-toc-widget-sticky-container.mobile-overlay .ez-toc-mobile-close-btn:hover {
            background-color: #f0f0f0;
        }
    }

    /* Ensure smooth transitions */
    .ez-toc-widget-sticky-container {
        transition: all 0.3s ease;
    }

    /* Hide sticky widget when it's not needed */
    .ez-toc-widget-sticky-container.is_stuck.hidden {
        opacity: 0;
        pointer-events: none;
    }

    @media (max-width: 768px) {
        div.ez-toc-widget-sticky-container ul.ez-toc-widget-sticky-list {
            margin-left: 0;
            padding-left: 0;
        }
    }
 
    .ez-toc-widget-sticky .is_stuck .ez-toc-widget-sticky-title-container {
        padding-left: 20px;
        padding-top:5px;
    }
   

    @media screen and (min-width: 56.875em){
       .ez-toc-widget-sticky .is_stuck .widget-title{
            margin-bottom: 5px;
        }
    }