/*Write only responsive CSS*/
ul.responsive.ui-listview {
    --listview-border-radius: inherit;
}

/*General Related to the Responsive*/
/*Report Listview*/
ul.responsive.ui-listview > li .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f) > .heading,
fieldset.responsive > .ui-controlgroup-controls > .ui-checkbox .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f) > .heading {
    display: none;
}

ul.responsive.ui-listview > li .ui-responsive,
fieldset.responsive > .ui-controlgroup-controls > .ui-checkbox .ui-responsive {
    display: flex;
    align-items: center;
    gap: 10px;
}

/*Fieldset Header Styling*/
fieldset.responsive > .ui-controlgroup-controls > #header.ui-first-child {
    border-radius: 10px 10px 0 0;
    padding: 5px 0;
    box-sizing: border-box;
}
fieldset.responsive > .ui-controlgroup-controls > #header.ui-first-child > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f) {
    padding: 0 12px;
}

/*First checkbox*/
ul.responsive.ui-listview > li.ui-first-child .ui-responsive > .ui-block-a.ui-checkbox,
ul.responsive.ui-listview > li:not(.ui-first-child) .ui-responsive > .ui-block-a:has(.ui-checkbox) {
    width: 55px;
}
ul.responsive.ui-listview > li .ui-responsive > .ui-block-a > .ui-checkbox > .ui-btn,
fieldset.responsive > .ui-controlgroup-controls > .ui-checkbox .ui-responsive > .ui-block-a > .ui-checkbox > .ui-btn {
    background: none !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
    display: inline-block !important;
}
/*Text overflow hidden*/
ul.responsive.ui-listview > li .ellipsis:is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f) {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
}

/*Jquery mobile grid-e works only with responsive*/
ul.responsive.ui-listview > li > .ui-grid-e {
    overflow: hidden;
}
ul.responsive.ui-listview > li > .ui-grid-e > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f) {
    float:left;
    width: 16.66666666666667%;
}
ul.responsive.ui-listview > li > .ui-grid-e > .ui-block-a {
    clear: left;
}
/*Custom grid-e END*/

/*INFO Jquery mobile has max-width 560px*/
@media (max-width: 560px) {
    ul.responsive.ui-listview > li[role="heading"]:first-of-type,
    fieldset.responsive > .ui-controlgroup-controls > .ui-first-child {
        display: none;
    }

    ul.responsive.ui-listview > li[role="heading"]:first-of-type + li,
    /*TODO not in here, delete after verify*/
    /*ul.responsive.ui-listview > li[role="heading"] + li:has(> a:only-of-type),*/
    fieldset.responsive > .ui-controlgroup-controls > .ui-checkbox:first-child {
        -webkit-border-top-right-radius: inherit;
        border-top-right-radius: inherit;
        -webkit-border-top-left-radius: inherit;
        border-top-left-radius: inherit;
        overflow: hidden;
    }

    ul.responsive.ui-listview > li[role="heading"]:first-of-type + li > a:first-child {
        -webkit-border-top-left-radius: inherit;
        border-top-left-radius: inherit;
    }
    ul.responsive.ui-listview > li[role="heading"]:first-of-type + li > a:last-child {
        -webkit-border-top-right-radius: inherit;
        border-top-right-radius: inherit;
    }

    /*First Anchor Link*/
    ul.responsive.ui-listview > li[role="heading"]:first-of-type + li:has(> a:only-of-type) > a,
    /*First sub-heading*/
    ul.responsive.ui-listview > li[role="heading"]:first-of-type + li:not(:has(a)).sub-heading {
        -webkit-border-top-right-radius: inherit;
        border-top-right-radius: inherit;
        -webkit-border-top-left-radius: inherit;
        border-top-left-radius: inherit;
    }
    /*li has only two anchor links and another is button*/

    /*Target li has thumb and only one child a*/
    ul.responsive.ui-listview > li.ui-li-has-thumb:not([role="heading"]) > a:only-of-type {

    }

    /*Target all li who has only one child a*/
    ul.responsive.ui-listview > li:not([role="heading"]) > a:only-of-type,
    ul.responsive.ui-listview > li:not([role="heading"]).ui-body-inherit:has(> .ui-responsive),
    fieldset.responsive > .ui-controlgroup-controls > .ui-checkbox > .ui-btn:only-of-type {
        padding-top: 0.31em;
        padding-bottom: 0.31em;
    }

    /*List has only one a tag and it has image*/
    ul.responsive.ui-listview > li.ui-li-has-thumb:not([role="heading"]) > a:only-of-type {
        /*As jquery thumb max size H:5em & W:5em*/
        padding-left: 5.5em;
        min-height: 4.3em;
    }

    /*List has only one a tag and it has btn on right side*/
    ul.responsive.ui-listview > li:not([role="heading"]) > a.ui-btn.ui-btn-icon-right:only-of-type {
        padding-right: 1.87em;
    }
    /*List has only one a tag and it has btn on right side -> icon*/
    ul.responsive.ui-listview > li:not([role="heading"]) > a.ui-btn:only-of-type::after {
        right: 0.31em;
    }

    ul.responsive.ui-listview > li .ui-responsive,
    fieldset.responsive > .ui-controlgroup-controls > .ui-checkbox .ui-responsive {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 0;
    }

    ul.responsive.ui-listview > li .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f),
    fieldset.responsive > .ui-controlgroup-controls > .ui-checkbox .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f) {
        display: flex;
        font-size: 0.8em;
        align-items: center;
        margin: 2px 0;
    }
    /*Add Font-weight to block if strong class defined*/
    /*It's for Listview without anchor link*/
    ul.responsive.ui-listview.strong > li .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f),
    fieldset.responsive > .ui-controlgroup-controls > .ui-checkbox .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f) {
        font-weight: 600;
    }
    /*Remove radius from first image*/
    ul.responsive.ui-listview > li img:first-child:not(.ui-li-icon) {
        -webkit-border-bottom-left-radius: 0;
        border-bottom-left-radius: 0;
    }
    ul.responsive.ui-listview > li .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f) > .heading,
    fieldset.responsive > .ui-controlgroup-controls > .ui-checkbox .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f) > .heading {
        display: block;
        margin-right: 0.18em;
        width: auto !important;
    }
    /*Long text*/
    ul.responsive.ui-listview > li .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f).longtext,
    fieldset.responsive > .ui-controlgroup-controls > .ui-checkbox .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f).longtext {
        flex-direction: column;
        text-wrap: wrap;
        text-indent: 10px; /*Shift longtext 10px*/
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 4; /*INFO this for max allowed line-height along with heading*/
        overflow: hidden;
    }
    /*Move back heading as it is*/
    ul.responsive.ui-listview > li .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f).longtext > .heading,
    fieldset.responsive > .ui-controlgroup-controls > .ui-checkbox .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f).longtext > .heading {
        text-indent: 0;
    }
    /*Add colon after heading*/
    ul.responsive.ui-listview > li .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f) > .heading::after,
    fieldset.responsive > .ui-controlgroup-controls > .ui-checkbox .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f) > .heading::after {
        content: ": ";
    }
    ul.responsive.ui-listview > li > .divider,
    fieldset.responsive > .ui-controlgroup-controls > .ui-checkbox > .divider,
    ul.responsive.ui-listview > li .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f).longtext.divider,
    fieldset.responsive > .ui-controlgroup-controls > .ui-checkbox .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f).longtext.divider {
        border-top:1px solid #dedede;
        padding-top: 5px;
        order: 1; /*Keep this entry at the last*/
        text-indent: 0; /*Hide heading when marked as longtext with divider*/
    }
    /*Remove border and padding if content is empty*/
    ul.responsive.ui-listview > li > .divider:empty,
    fieldset.responsive > .ui-controlgroup-controls > .ui-checkbox > .divider:empty,
    ul.responsive.ui-listview > li .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f).longtext.divider:empty,
    fieldset.responsive > .ui-controlgroup-controls > .ui-checkbox .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f).longtext.divider:empty {
        border-top: none;
        padding-top: 0;
    }

    /*Hide Heading for longtext has divider withing block*/
    ul.responsive.ui-listview > li .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f).longtext.divider > .heading,
    fieldset.responsive > .ui-controlgroup-controls > .ui-checkbox .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f).longtext.divider > .heading {
        display: none;
    }

    /*Listview's Block-a contain ui-checkbox*/
    ul.responsive.ui-listview > li.ui-first-child .ui-responsive > .ui-block-a.ui-checkbox,
    ul.responsive.ui-listview > li:not(.ui-first-child) .ui-responsive > .ui-block-a:has(.ui-checkbox) {
        position: absolute;
        left: 0;
        transform: translateY(-50%) !important;
        top: 50% !important;
    }
    /*Listview's block-a contain ui-checkbox, adjust rest blocks position*/
    ul.responsive.ui-listview > li:not(.ui-first-child) .ui-responsive:has(.ui-block-a .ui-checkbox) > :is(.ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f) {
        padding-left: 30px;
    }

    /*Form styling*/
    ul.responsive.ui-listview > li .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f) :is(.ui-select, .ui-input-text) {
        margin: 2px;
    }
    ul.responsive.ui-listview > li .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f) > .ui-select > .ui-btn,
    ul.responsive.ui-listview > li .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f) .ui-input-text > input {
        padding: 5px 30px 5px 10px;
        border-radius: var(--listview-border-radius);
        min-width: 70px;
    }
    ul.responsive.ui-listview > li .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f) .ui-input-text > input {
        padding: 0.4em;
    }

    ul.responsive.ui-listview > li .ui-responsive > :is(.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e, .ui-block-f) > .ui-field-contain {
        padding: 0;
    }
}
