/* ─── Blog live search ───────────────────────────────────────────────────
   The panel under the search box, drawn by assets/js/live-search.js. The
   box itself keeps the theme's styling; this only restyles #searchResults
   and what goes inside it. */
.widget_search,
.widget_searchNew {
    position: relative;
}
.widget_search input#searchInput {
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.widget_search input#searchInput:focus {
    border-color: #735ae5;
    box-shadow: 0 0 0 4px rgba(115, 90, 229, 0.12);
}


.widget_search #searchResults.sr-live, .widget_search .js-live-results.sr-live,
.widget_searchNew .js-live-results.sr-live {
    position: absolute;
    top: 100%;
    right: 0;
    z-index: 60;
    width: min(400px, calc(100vw - 32px));
    margin-top: 10px;
    padding: 6px;
    background: #fff;
    border: 1px solid #ebebf0;
    border-radius: 16px;
    box-shadow: 0 24px 48px -12px rgba(11, 7, 87, 0.18), 0 2px 6px rgba(11, 7, 87, 0.06);
    opacity: 0;
    transform: translateY(-6px);
    pointer-events: none;
    transition: opacity 0.18s ease, transform 0.18s ease;
    max-height: min(70vh, 560px);
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: #e3e3ea transparent;
}
.widget_search #searchResults.sr-live, .widget_search .js-live-results.sr-live.is-open,
.widget_searchNew .js-live-results.sr-live.is-open {
    opacity: 1;
    transform: none;
    pointer-events: auto;
}
/* In the combined bar the script wraps the box and the category control
   in one .sr-pill, and the panel is positioned against that: it spans the
   pill edge to edge, so it can never be wider than the bar on a narrow
   screen and lines up with it on a wide one. */
.sr-pill {
    position: relative;
    display: flex;
    align-items: stretch;
    max-width: 100%;
}
.mainBlogFilterButtonOne .widget_searchNew {
    position: static;
}
.widget_searchNew .js-live-results.sr-live {
    right: 0;
    left: 0;
    width: auto;
}
/* the pill's divider was drawn against the box (right: -1px); against the
   pill it sits the category button's width in from the right edge */
.mainBlogFilterButtonOne .widget_searchNew::after {
    right: 169px;
}
/* under 992px the pill fills its row on every page, the box taking what
   the category button leaves */
@media (max-width: 991px) {
    .sr-pill {
        flex: 1 1 auto;
        width: 100%;
    }
    .mainBlogFilterButtonOne .widget_searchNew {
        flex: 1 1 auto;
        min-width: 0;
    }
    .mainBlogFilterButtonOne .widget_searchNew input#searchInput,
    .mainBlogFilterButtonOne .widget_searchNew input.js-live-search {
        width: 100%;
    }
    .sr-cat {
        flex: 0 0 auto;
    }
}
.widget_search #searchResults.sr-live, .widget_search .js-live-results.sr-live.is-loading .sr-live__list,
.widget_searchNew .js-live-results.sr-live.is-loading .sr-live__list {
    opacity: 0.45;
}

/* count and key hints */
.sr-live__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 8px 12px 6px;
    font-size: 12px;
    line-height: 16px;
    color: #9d9d9d;
}
.sr-live__keys kbd {
    display: inline-block;
    min-width: 18px;
    margin-right: 2px;
    padding: 0 4px;
    border: 1px solid #e3e3ea;
    border-radius: 4px;
    background: #f6f6f7;
    font: 11px/16px inherit;
    color: #7f7f7f;
    text-align: center;
}
@media (max-width: 767px) {
    .sr-live__keys { display: none; }
}

/* the results */
.sr-live__list {
    margin: 0;
    padding: 0;
    list-style: none;
    transition: opacity 0.15s ease;
}
.sr-live__list li {
    margin: 0;
}
.widget_search #searchResults.sr-live, .widget_search .js-live-results.sr-live a.sr-live__item,
.widget_searchNew .js-live-results.sr-live a.sr-live__item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 10px 12px;
    border-radius: 10px;
    color: #0b0757;
    text-decoration: none;
    transition: background-color 0.15s ease;
}
.widget_search #searchResults.sr-live, .widget_search .js-live-results.sr-live a.sr-live__item:hover,
.widget_search #searchResults.sr-live, .widget_search .js-live-results.sr-live a.sr-live__item.is-active,
.widget_searchNew .js-live-results.sr-live a.sr-live__item:hover,
.widget_searchNew .js-live-results.sr-live a.sr-live__item.is-active {
    background: #f4f2ff;
}
.sr-live__thumb {
    flex: 0 0 64px;
    width: 64px;
    height: 44px;
    margin-top: 2px;
    border-radius: 8px;
    object-fit: cover;
    background: #f0eefb;
}
.sr-live__thumb--blank {
    display: block;
    background: linear-gradient(135deg, #ece8ff, #f8f6ff);
}
.sr-live__body {
    display: block;
    min-width: 0;
}
.sr-live__title {
    display: block;
    font-size: 14px;
    line-height: 20px;
    font-weight: 600;
    color: #0b0757;
}
.sr-live__excerpt {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-top: 2px;
    font-size: 12px;
    line-height: 17px;
    color: #6b6b73;
}
.sr-live__line {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px 10px;
    margin-top: 6px;
    font-size: 11px;
    line-height: 16px;
    color: #9d9d9d;
}
.sr-live__cat {
    padding: 1px 8px;
    border-radius: 999px;
    background: #efeafd;
    color: #735ae5;
    font-weight: 600;
}
.sr-live mark {
    padding: 0;
    background: none;
    color: #735ae5;
    text-decoration: underline;
    text-decoration-color: rgba(115, 90, 229, 0.4);
    text-underline-offset: 2px;
}

.widget_search #searchResults.sr-live, .widget_search .js-live-results.sr-live a.sr-live__all,
.widget_searchNew .js-live-results.sr-live a.sr-live__all {
    display: block;
    margin: 4px 6px 6px;
    padding: 10px 12px;
    border-top: 1px solid #f0f0f3;
    font-size: 13px;
    line-height: 18px;
    font-weight: 600;
    color: #735ae5;
    text-align: center;
    text-decoration: none;
}
.widget_search #searchResults.sr-live, .widget_search .js-live-results.sr-live a.sr-live__all:hover,
.widget_searchNew .js-live-results.sr-live a.sr-live__all:hover {
    background: #f4f2ff;
    border-radius: 10px;
}

/* recent searches and topics */
.sr-live__section {
    padding: 10px 12px 8px;
}
.sr-live__section + .sr-live__section {
    border-top: 1px solid #f0f0f3;
}
.sr-live__label {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
    font-size: 11px;
    line-height: 16px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #9d9d9d;
}
.widget_search #searchResults.sr-live, .widget_search .js-live-results.sr-live a.sr-live__clear,
.widget_searchNew .js-live-results.sr-live a.sr-live__clear {
    font-size: 11px;
    letter-spacing: 0;
    text-transform: none;
    color: #9d9d9d;
    text-decoration: none;
}
.widget_search #searchResults.sr-live, .widget_search .js-live-results.sr-live a.sr-live__clear:hover,
.widget_searchNew .js-live-results.sr-live a.sr-live__clear:hover {
    color: #735ae5;
}
.sr-live__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
.widget_search #searchResults.sr-live, .widget_search .js-live-results.sr-live a.sr-live__chip,
.widget_searchNew .js-live-results.sr-live a.sr-live__chip {
    display: inline-block;
    max-width: 100%;
    padding: 5px 12px;
    border: 1px solid #e6e6ec;
    border-radius: 999px;
    background: #fff;
    font-size: 13px;
    line-height: 18px;
    color: #50504c;
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: border-color 0.15s ease, color 0.15s ease, background-color 0.15s ease;
}
.widget_search #searchResults.sr-live, .widget_search .js-live-results.sr-live a.sr-live__chip:hover,
.widget_searchNew .js-live-results.sr-live a.sr-live__chip:hover {
    border-color: #735ae5;
    background: #f4f2ff;
    color: #735ae5;
}
.widget_search #searchResults.sr-live, .widget_search .js-live-results.sr-live a.sr-live__chip--topic::before,
.widget_searchNew .js-live-results.sr-live a.sr-live__chip--topic::before {
    content: "#";
    margin-right: 2px;
    color: #b3a6f2;
}

/* empty and loading states */
.sr-live__empty {
    padding: 18px 12px 12px;
    text-align: center;
}
.sr-live__empty-title {
    margin: 0 0 4px;
    font-size: 14px;
    line-height: 20px;
    font-weight: 600;
    color: #0b0757;
}
.sr-live__empty-hint {
    margin: 0;
    font-size: 12px;
    line-height: 17px;
    color: #9d9d9d;
}
.sr-live__skeleton {
    padding: 6px;
}
.sr-live__bone {
    height: 44px;
    margin: 6px 0;
    border-radius: 10px;
    background: linear-gradient(90deg, #f3f3f6 25%, #ebebf0 50%, #f3f3f6 75%);
    background-size: 200% 100%;
    animation: sr-live-shimmer 1.2s ease-in-out infinite;
}
@keyframes sr-live-shimmer {
    from { background-position: 200% 0; }
    to   { background-position: -200% 0; }
}
@media (prefers-reduced-motion: reduce) {
    .widget_search #searchResults.sr-live, .widget_search .js-live-results.sr-live,
.widget_searchNew .js-live-results.sr-live { transition: none; }
    .sr-live__bone { animation: none; }
}

/* ─── Category menu ──────────────────────────────────────────────────────
   The right half of the pill: a button in the native select's box, and
   under it a panel in the same style as the search results. */
.sr-cat {
    position: relative;
    display: flex;
    align-self: stretch;
}
.sr-cat__native {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}
.mainBlogFilterButtonOne .search .sr-cat__btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    width: 170px;
    margin: 0;
    padding: 0 14px 0 16px;
    border: 1px solid #d3d3d3;
    border-left: 0;
    border-radius: 0 10px 10px 0;
    background: #fff;
    font-family: 'TWKLausanne300', 'TWKLausanne', inherit;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.2;
    color: #141413;
    text-align: left;
    cursor: pointer;
    transition: background-color 0.15s ease;
}
.mainBlogFilterButtonOne .search .sr-cat__btn:hover,
.sr-cat.is-open .sr-cat__btn {
    background: #faf9ff;
}
.sr-cat__btn:focus-visible {
    outline: 2px solid #735ae5;
    outline-offset: -2px;
}
.sr-cat__label {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.sr-cat__chev {
    flex: 0 0 16px;
    width: 16px;
    height: 16px;
    color: #141413;
    transition: transform 0.2s ease;
}
.sr-cat.is-open .sr-cat__chev {
    transform: rotate(180deg);
}

.sr-cat__panel {
    position: absolute;
    top: 100%;
    right: 0;
    z-index: 60;
    width: min(300px, calc(100vw - 32px));
    margin-top: 10px;
    padding: 6px;
    background: #fff;
    border: 1px solid #ebebf0;
    border-radius: 16px;
    box-shadow: 0 24px 48px -12px rgba(11, 7, 87, 0.18), 0 2px 6px rgba(11, 7, 87, 0.06);
    opacity: 0;
    transform: translateY(-6px);
    pointer-events: none;
    transition: opacity 0.18s ease, transform 0.18s ease;
}
.sr-cat.is-open .sr-cat__panel {
    opacity: 1;
    transform: none;
    pointer-events: auto;
}
.sr-cat__find {
    padding: 4px 4px 8px;
}
.mainBlogFilterButtonOne .search .sr-cat__input {
    width: 100%;
    padding: 9px 12px 9px 34px;
    border: 1px solid #e6e6ec;
    border-radius: 10px;
    background: #fafafb url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%239d9d9d' stroke-width='1.6' stroke-linecap='round'%3E%3Ccircle cx='7' cy='7' r='4.5'/%3E%3Cpath d='M10.5 10.5L14 14'/%3E%3C/svg%3E") no-repeat 11px center / 15px;
    font-size: 13px;
    line-height: 18px;
    color: #0b0757;
    outline: none;
    -webkit-appearance: none;
    appearance: none;
}
.mainBlogFilterButtonOne .search .sr-cat__input:focus {
    border-color: #735ae5;
    background-color: #fff;
}
.sr-cat__list {
    max-height: 320px;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: #e3e3ea transparent;
}
.mainBlogFilterButtonOne .search a.sr-cat__opt {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 9px 12px;
    border-radius: 10px;
    font-size: 14px;
    line-height: 18px;
    color: #0b0757;
    text-decoration: none;
    transition: background-color 0.15s ease;
}
/* display:flex above would otherwise beat the hidden attribute the filter sets */
.mainBlogFilterButtonOne .search a.sr-cat__opt[hidden] {
    display: none;
}
.mainBlogFilterButtonOne .search a.sr-cat__opt:hover,
.mainBlogFilterButtonOne .search a.sr-cat__opt.is-active {
    background: #f4f2ff;
}
.mainBlogFilterButtonOne .search a.sr-cat__opt.is-current {
    color: #735ae5;
    font-weight: 600;
}
.sr-cat__opt.is-current .sr-cat__name::after {
    content: "";
    display: inline-block;
    width: 7px;
    height: 11px;
    margin-left: 8px;
    border-right: 2px solid #735ae5;
    border-bottom: 2px solid #735ae5;
    transform: rotate(45deg) translateY(-2px);
}
.sr-cat__opt--all {
    margin-bottom: 4px;
    border-bottom: 1px solid #f0f0f3;
    border-radius: 10px 10px 0 0;
}
.sr-cat__count {
    flex: none;
    min-width: 26px;
    padding: 1px 7px;
    border-radius: 999px;
    background: #f3f3f6;
    font-size: 11px;
    line-height: 16px;
    font-weight: 500;
    color: #7f7f7f;
    text-align: center;
}
.sr-cat__opt.is-current .sr-cat__count {
    background: #efeafd;
    color: #735ae5;
}
.sr-cat__none {
    margin: 0;
    padding: 14px 12px 10px;
    font-size: 13px;
    color: #9d9d9d;
    text-align: center;
}
@media (max-width: 767px) {
    .mainBlogFilterButtonOne .search .sr-cat__btn {
        padding: 0 10px;
    }
    .sr-cat__list {
        max-height: 260px;
    }
}
@media (prefers-reduced-motion: reduce) {
    .sr-cat__panel, .sr-cat__chev { transition: none; }
}

/* ─── The bar in a sidebar ────────────────────────────────────────────────
   On a post the bar sits at the top of the right column, so the pill
   stacks: the box on top, the category button under it, each full width
   and rounded on its own. The panels span the column. */
.Sidebar .mainBlogFilterButtonOne .search {
    justify-content: stretch;
    margin: 0 0 24px;
}
.Sidebar .post-search__label {
    margin: 0 0 10px;
    font-size: 12px;
    line-height: 16px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #7a7a85;
}
@media (max-width: 767px) {
    .Sidebar .post-search {
        margin-top: 8px;
        padding-top: 24px;
        border-top: 1px solid #ebebf0;
    }
}
.Sidebar .sr-pill {
    flex-direction: column;
    gap: 10px;
    width: 100%;
}
/* in the sidebar the panel hangs from the box itself, not from the foot of
   the stacked pill, and is exactly the box's width */
.Sidebar .mainBlogFilterButtonOne .widget_searchNew {
    position: relative;
    width: 100%;
}
.Sidebar .widget_searchNew .js-live-results.sr-live,
.Sidebar .widget_searchNew #searchResults.sr-live {
    top: 100%;
    right: 0;
    left: 0;
    width: auto;
    max-width: none;
}
.Sidebar .mainBlogFilterButtonOne .widget_searchNew::after {
    display: none;
}
.Sidebar .mainBlogFilterButtonOne .widget_searchNew input#searchInput,
.Sidebar .mainBlogFilterButtonOne .widget_searchNew input.js-live-search {
    width: 100%;
    padding: 13px 14px 13px 42px;
    border: 1px solid #d3d3d3;
    border-radius: 10px;
    font-size: 15px;
    background-position: 16px 50%;
}
.Sidebar .sr-cat {
    width: 100%;
}
.Sidebar .mainBlogFilterButtonOne .search .sr-cat__btn {
    width: 100%;
    padding: 12px 14px;
    border: 1px solid #d3d3d3;
    border-radius: 10px;
}
.Sidebar .sr-cat__panel {
    width: 100%;
}
/* the theme's own #searchResults rule gives the sidebar panel a 12px corner;
   both panels take the page's card corner */
.Sidebar .widget_searchNew .js-live-results.sr-live,
.Sidebar .widget_searchNew #searchResults.sr-live,
.Sidebar .sr-cat__panel {
    border-radius: 16px;
}
.Sidebar .sr-live__keys {
    display: none;
}

/* The phone copy of the bar on a post has its own ids, so the theme's
   input rule (keyed on #searchInput) misses it; the same box, restated. */
.widget_searchNew input.js-live-search {
    width: 550px;
    max-width: 100%;
    padding: 17px 48px 16px 50px;
    border: 1px solid #d3d3d3;
    border-right: 0;
    border-radius: 10px 0 0 10px;
    background: #fff url(https://sr-website-01.shiprocket.in/sr-website/Search-icon-jvgwt2.svg) no-repeat 22px 50% / 16px;
    font-family: 'TWKLausanne300', 'TWKLausanne', inherit;
    font-size: 16px;
    color: #333;
    outline: none;
    text-overflow: ellipsis;
    white-space: nowrap;
    -webkit-appearance: none;
    appearance: none;
}
.widget_searchNew input.js-live-search::placeholder {
    color: #999998;
}
@media (max-width: 991px) {
    .widget_searchNew input.js-live-search {
        width: 100%;
        padding: 12px 10px 12px 30px;
        font-size: 14px;
        background-size: 14px;
        background-position: 10px 50%;
    }
}


/* ─── The theme's id-keyed box rules, outranked ───────────────────────────
   styles.min.css styles the results box by id (.widget_searchNew
   #searchResults: 360px wide, left-anchored, 12px corner, 300px max height,
   and every link navy with !important). An id outranks the class-keyed
   rules above, on every template, so the panel's measurements and link
   colours are restated here at id specificity. The values are the ones
   above; nothing new is introduced. The panel hangs from the left edge of
   the search box, under the text the reader is typing. */
.widget_searchNew #searchResults.sr-live {
    left: 0;
    right: auto;
    width: min(420px, 100%);
    max-height: min(70vh, 560px);
    margin-top: 10px;
    padding: 6px;
    overflow-y: auto;
    border-radius: 16px;
    box-shadow: 0 24px 48px -12px rgba(11, 7, 87, 0.18), 0 2px 6px rgba(11, 7, 87, 0.06);
}
.widget_searchNew #searchResults.sr-live a.sr-live__item {
    color: #0b0757 !important;
}
.widget_searchNew #searchResults.sr-live a.sr-live__chip {
    color: #50504c !important;
}
.widget_searchNew #searchResults.sr-live a.sr-live__chip:hover,
.widget_searchNew #searchResults.sr-live a.sr-live__all,
.widget_searchNew #searchResults.sr-live a.sr-live__all:hover,
.widget_searchNew #searchResults.sr-live a.sr-live__clear:hover {
    color: #735ae5 !important;
}
.widget_searchNew #searchResults.sr-live a.sr-live__clear {
    color: #9d9d9d !important;
}
/* in the sidebar the panel is exactly the box's width (restated from the
   sidebar block above, which the rule above would otherwise outrank) */
.Sidebar .widget_searchNew #searchResults.sr-live {
    width: auto;
    right: 0;
}
