.psf-top-title {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: -30px;
    margin-bottom: 12px;
    padding-left: 4px;
    font-size: 20px;
    font-weight: 700;
    color: #041428;
    line-height: 1;
}

.psf-top-title i {
    font-size: 18px;
    color: #1D6DB3;
}

/* =========================
   WRAPPER
========================= */
.psfilters {
    background: #fff;
    border: 1px solid rgba(37, 99, 235, .28);
    box-shadow: 
        0 8px 22px rgba(15, 23, 42, .06),
        0 0 0 1px rgba(96, 165, 250, .12),
        0 0 18px rgba(59, 130, 246, .08);
    border-radius: 14px;
    padding: 18px;
    position: relative;
    overflow: hidden;
}

/* =========================
   HEAD
========================= */
.psf-head {
    margin-bottom: 18px;
}

.psf-title {
    font-size: 17px;
    font-weight: 700;
    color: #041428;
    margin-bottom: 6px;
    line-height: 1.3;
}

.psf-subtitle {
    font-size: 13px;
    color: #6b7280;
    line-height: 1.5;
}

/* =========================
   SEARCH
========================= */
.psf-search-wrap {
    margin-bottom: 18px;
}

.psf-search {
    width: 100%;
    height: 44px;
    border: 1px solid #d7dee7;
    border-radius: 10px;
    padding: 0 14px;
    font-size: 14px;
    background: #fff;
    transition: .25s;
    outline: none;
}

.psf-search:focus {
    border-color: #1D6DB3;
    box-shadow: 0 0 0 4px rgba(29, 109, 179, .08);
}

/* =========================
   LIST
========================= */
.psf-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    max-height: var(--psf-max-height, 520px);
    overflow: auto;
    padding-right: 4px;
}

.psf-list::-webkit-scrollbar {
    width: 6px;
}

.psf-list::-webkit-scrollbar-thumb {
    background: #c9d2dc;
    border-radius: 20px;
}

/* =========================
   SECTIONS
========================= */
.psf-section {
    margin-bottom: 26px;
}

.psf-section:last-child {
    margin-bottom: 0;
}

.psf-section-title {
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    font-weight: 700;
    color: #041428;
    margin-bottom: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e8edf3;
    line-height: 1.4;
}

.psf-section-title:after {
    content: '';
    flex: 1;
    height: 1px;
    background: #edf1f5;
}

.psf-section-products {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/* =========================
   PRODUCT LINK
========================= */
.psf-link {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 14px;
    border: 1px solid #edf1f5;
    border-radius: 10px;
    background: #fff;
    text-decoration: none;
    transition: .25s;
}

.psf-link:hover {
    border-color: #1D6DB3;
    background: #f8fbff;
    transform: translateX(2px);
}

.psf-link.active {
    border-color: #1D6DB3;
    background: #f4f9ff;
    box-shadow: 0 0 0 1px rgba(29, 109, 179, .08);
    transform:none;
	box-shadow:
0 0 0 1px rgba(29,109,179,.12),
0 4px 14px rgba(29,109,179,.08);
}

.psf-link.active .psf-dimension {
    color: #1D6DB3;
    font-weight: 700;
}

.psf-link.active:before {
    content: '►';
    font-size: 11px;
    color: #1D6DB3;
    margin-top: 4px;
}

/* =========================
   DIMENSIONS
========================= */
.psf-dimension-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
}

.psf-dimension-left {
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
    flex:1;
    min-width:0;
}

.psf-dimension {
    font-size: 14px;
    font-weight: 600;
    color: #041428;
    line-height: 1.4;
}

/* =========================
   BADGES
========================= */
.psf-quality{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:24px;
    padding:0 10px;
    border-radius:30px;
    background:linear-gradient(135deg,#0d3b73,#1d6db3);
    color:#fff;
    font-size:10px;
    font-weight:700;
    letter-spacing:.15px;
    line-height:1;
    white-space:nowrap;
    flex-shrink:0;
    margin-left:auto;
    box-shadow:
    0 4px 10px rgba(13,59,115,.12);
}

.psf-variant{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:21px;
    padding:0 7px;
    border-radius:24px;
    background:#f4f7fb;
    border:1px solid #e4ebf3;
    color:#4b6480;
    font-size:10px;
    font-weight:600;
    letter-spacing:.1px;
    line-height:1;
    white-space:nowrap;
    flex-shrink:0;
}

/* =========================
   PRICE FILTER
========================= */
.psf-filter-label {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 10px;
    padding-left: 2px;
    font-size: 13px;
    font-weight: 700;
    color: #041428;
    line-height: 1;
}

.psf-filter-label i {
    font-size: 11px;
    color: #1D6DB3;
}

/* =========================
   PRICE SLIDER
========================= */
.psf-price-slider-wrap {
    margin: 0 0 22px;
    padding: 14px;
    border: 1px solid #edf1f5;
    border-radius: 12px;
    background: #fbfcfe;
}

.psf-price-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 12px;
    font-size: 12px;
    font-weight: 600;
    color: #041428;
}

.psf-price-current {
    color: #1D6DB3;
}

.psf-price-slider {
    width: 100%;
    height: 5px;
    border-radius: 20px;
    outline: none;
    cursor: pointer;
    accent-color: #1D6DB3;
}

/* =========================
   FOAM
========================= */

.psfilters-foam .psf-section-title{
    color:#0f5fd7;
}

/* =========================
   STRETCH
========================= */

.psfilters-stretch .psf-section-title{
    color:#0f9f6e;
}

/* =========================
   CARTONS
========================= */

.psfilters-cartons .psf-section-title{
    color:#e67e22;
}

/* =========================
   TAPES
========================= */

.psfilters-tapes .psf-section-title{
    color:#8b5cf6;
}

/* =========================
   PRINTED TAPES
========================= */

.psfilters-printedtapes .psf-section-title{
    color:#6c39c4;
}

/* =========================
   AEROPLAST
========================= */

.psfilters-aeroplast .psf-section-title{
    color:#ec4899;
}

/* =========================
   AEROHART
========================= */

.psfilters-aerohart .psf-section-title{
    color:#f59e0b;
}

/* =========================
   PEANUTS
========================= */

.psfilters-peanuts .psf-section-title{
    color:#14b8a6;
}

/* =========================
   MOVING PACKS
========================= */

.psfilters-movingpacks .psf-section-title{
    color:#e67e22;
}

.psfilters-foam{
    --psf-max-height:420px;
}

.psfilters-cartons{
    --psf-max-height:620px;
}

.psfilters-stretch{
    --psf-max-height:520px;
}

/*
|--------------------------------------------------------------------------
| ACCORDION
|--------------------------------------------------------------------------
*/
.psf-section-products{
    display:none;
}

.psf-section.active .psf-section-products{
    display:block;
}

/*
|--------------------------------------------------------------------------
| Section Title
|--------------------------------------------------------------------------
*/
.psf-section-title{
    cursor:pointer;
    position:relative;
    user-select:none;
    padding-right:30px;
    line-height:1.2;
}

/*
|--------------------------------------------------------------------------
| Arrow
|--------------------------------------------------------------------------
*/
.psf-section-title:after{
    content:"";
    position:absolute;
    right:0;
    top:50%;
    width:8px;
    height:8px;
    margin-top:-6px;
    border-right:2px solid currentColor;
    border-bottom:2px solid currentColor;
    transform:rotate(45deg);
    transition:transform .25s ease;
}

/*
|--------------------------------------------------------------------------
| Active
|--------------------------------------------------------------------------
*/
.psf-section.active .psf-section-title:after{
    transform:rotate(-135deg);
}
.psf-section{
    margin-bottom:5px;
}

.psf-toggle-all{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    border:none;
    background:#f3f6fa;
    color:#1D6DB3;
    padding:6px 12px;
    border-radius:10px;
    font-size:13px;
    font-weight:600;
    cursor:pointer;
    margin-bottom:10px;
    transition:.2s ease;
}

.psf-toggle-all:hover{
    background:#e7eef7;
}

/* =========================
   MOBILE
========================= */
@media (max-width: 991px) {
    .psfilters {
        padding: 16px;
    }

    .psf-list {
        max-height: 420px;
    }

    .psf-link {
        padding: 11px 12px;
    }
}