/* =======================================================================
   SOFTLYSTUDIOS  |  MINI CAPSULE WISHLIST  |  SINGLE CLEAN STYLESHEET
   File: public/css/wishlist-capsule.css
   Works with #ss-capsule-wishlist Blade and current wishlist card JS.
   The icons use vector SVG backgrounds (not emoji fonts).
   ======================================================================= */

   #ss-capsule-wishlist {
    --sw-forest: #254b35;
    --sw-forest-dark: #193b29;
    --sw-sage: #628d6b;
    --sw-ink: #294634;
    --sw-muted: #768b7a;
    --sw-outline: #dae7da;
    --sw-surface: #fff;
    --sw-mist: #f1f6ef;
    width: 100%;
    min-width: 0;
    padding: 22px 0 50px;
    background: #f8faf7;
    color: var(--sw-ink);
}
#ss-capsule-wishlist *,
#ss-capsule-wishlist *::before,
#ss-capsule-wishlist *::after { box-sizing: border-box; }
#ss-capsule-wishlist [hidden] { display: none !important; }
#ss-capsule-wishlist a { text-decoration: none; }
#ss-capsule-wishlist :is(button, input, select, textarea) { font: inherit; }
#ss-capsule-wishlist .ss-wishlist-wrap {
    width: min(1280px, calc(100% - 44px));
    margin-inline: auto;
}
#ss-capsule-wishlist .sw-sr-only {
    position: absolute !important;
    width: 1px; height: 1px; padding: 0; margin: -1px;
    overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}

/* --- Breadcrumb and editorial heading --- */
#ss-capsule-wishlist .sw-breadcrumb {
    display: flex; flex-wrap: wrap; gap: 10px; align-items: center;
    margin-bottom: 16px; color: #91a494; font-size: 12px;
}
#ss-capsule-wishlist .sw-breadcrumb a { color: #64846b; }
#ss-capsule-wishlist .sw-kicker {
    display: block; color: #729579; font-size: 10px;
    font-weight: 800; letter-spacing: .13em;
}
#ss-capsule-wishlist :is(h1, h2) {
    color: var(--sw-forest); font-family: "DM Serif Display", Georgia, serif;
    font-weight: 400; letter-spacing: -.035em;
}
#ss-capsule-wishlist :is(h1, h2) em { color: #719579; }
#ss-capsule-wishlist .ss-wishlist-heading {
    display: flex; align-items: center; justify-content: space-between; gap: 20px;
    padding: 24px 29px; border: 1px solid var(--sw-outline);
    border-radius: 18px; background: linear-gradient(112deg, #fff, #f0f7ee);
}
#ss-capsule-wishlist .sw-heading-copy { min-width: 0; }
#ss-capsule-wishlist .ss-wishlist-heading h1 {
    margin: 8px 0; font-size: clamp(32px, 3.6vw, 46px); line-height: 1.13;
}
#ss-capsule-wishlist .ss-wishlist-heading p {
    max-width: 640px; margin: 0; color: var(--sw-muted);
    font-size: 13px; line-height: 1.7;
}
#ss-capsule-wishlist .sw-discover-link {
    display: inline-flex; align-items: center; justify-content: center; gap: 14px;
    flex-shrink: 0; min-height: 42px; padding: 10px 17px;
    border-radius: 999px; background: var(--sw-forest); color: #fff;
    font-size: 12px; font-weight: 800;
    transition: transform .22s ease, background .22s ease;
}
#ss-capsule-wishlist .sw-discover-link:hover {
    background: var(--sw-forest-dark); color: #fff; transform: translateY(-2px);
}

/* --- Stats: restrained in height --- */
#ss-capsule-wishlist .ss-wishlist-stats {
    display: grid; grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 11px; margin: 14px 0 28px;
}
#ss-capsule-wishlist .ss-wishlist-stat {
    display: flex; align-items: center; gap: 11px; min-width: 0;
    padding: 12px 14px; border: 1px solid var(--sw-outline);
    border-radius: 13px; background: #fff;
}
#ss-capsule-wishlist .sw-stat-icon {
    display: grid; place-items: center; flex: 0 0 38px;
    width: 38px; height: 38px; border-radius: 50%;
    background: #edf5ea; color: #658e6c; font-size: 21px;
}
#ss-capsule-wishlist .ss-wishlist-stat strong {
    display: block; color: var(--sw-forest); font-size: 24px;
    font-weight: 800; line-height: 1;
}
#ss-capsule-wishlist .ss-wishlist-stat small {
    display: block; margin-top: 4px; color: #7a8d7d; font-size: 11px;
}

/* --- Headings, search and filters --- */
#ss-capsule-wishlist .sw-section-heading {
    display: flex; justify-content: space-between; align-items: end;
    gap: 15px; margin-bottom: 15px;
}
#ss-capsule-wishlist .sw-section-heading h2 {
    margin: 5px 0 0; font-size: clamp(27px, 2.8vw, 36px); line-height: 1.2;
}
#ss-capsule-wishlist .sw-heading-note {
    color: #95a998; font-size: 9px; font-weight: 800; letter-spacing: .1em;
}
#ss-capsule-wishlist .ss-wishlist-toolbar {
    display: grid; grid-template-columns: minmax(210px, 1.5fr) repeat(3, minmax(0, 1fr));
    gap: 9px; padding: 11px; border: 1px solid var(--sw-outline);
    border-radius: 13px; background: #fff;
}
#ss-capsule-wishlist .sw-search-wrap,
#ss-capsule-wishlist .sw-select-wrap {
    display: flex; min-width: 0; gap: 8px; border: 1px solid var(--sw-outline);
    border-radius: 9px; background: #fbfcfa; color: #799680;
}
#ss-capsule-wishlist .sw-search-wrap {
    align-items: center; padding: 0 12px;
}
#ss-capsule-wishlist .sw-search-wrap > span { font-size: 22px; }
#ss-capsule-wishlist #ss-wishlist-search {
    width: 100%; min-width: 0; min-height: 43px; padding: 0;
    border: 0; outline: 0; background: transparent;
    color: var(--sw-forest); font-size: 12px;
}
#ss-capsule-wishlist .sw-select-wrap {
    flex-direction: column; justify-content: center; gap: 3px; padding: 6px 10px;
}
#ss-capsule-wishlist .sw-select-wrap label {
    color: #99ac9b; font-size: 9px; font-weight: 800; letter-spacing: .07em;
}
#ss-capsule-wishlist .sw-select-wrap select {
    width: 100%; min-width: 0; border: 0; outline: 0;
    background: transparent; color: #395e43; font-size: 12px; cursor: pointer;
}

/* --- Collection creation and removable collection names --- */
#ss-capsule-wishlist .ss-wishlist-collections-panel {
    display: flex; align-items: center; justify-content: space-between; gap: 15px;
    margin-top: 11px; padding: 15px 17px;
    border: 1px solid var(--sw-outline); border-radius: 12px; background: #eef5ec;
}
#ss-capsule-wishlist .ss-wishlist-collections-panel strong {
    color: #375e42; font-size: 14px;
}
#ss-capsule-wishlist .ss-wishlist-collections-panel p {
    margin: 4px 0 0; color: #7d9181; font-size: 11px;
}
#ss-capsule-wishlist #ss-wishlist-create-collection {
    display: flex; align-items: center; gap: 7px; min-width: 0;
}
#ss-capsule-wishlist #ss-wishlist-new-collection {
    width: 210px; min-width: 0; min-height: 40px; padding: 9px 12px;
    border: 1px solid #d5e2d3; border-radius: 9px;
    outline: 0; background: #fff; color: var(--sw-forest); font-size: 12px;
}
#ss-capsule-wishlist #ss-wishlist-create-collection button {
    min-height: 40px; padding: 9px 15px; border: 0; border-radius: 9px;
    background: var(--sw-forest); color: #fff;
    font-size: 12px; font-weight: 800; cursor: pointer;
}
#ss-capsule-wishlist .ss-wishlist-chips {
    display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0 22px;
}
#ss-capsule-wishlist .ss-wishlist-chips:empty { display: none; }
#ss-capsule-wishlist .ss-wishlist-chip {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 5px 9px 5px 12px; border: 1px solid var(--sw-outline);
    border-radius: 999px; background: #fff;
    color: #527b5c; font-size: 11px;
}
#ss-capsule-wishlist .ss-wishlist-chip button {
    display: grid; place-items: center; width: 21px; height: 21px;
    padding: 0; border: 0; border-radius: 50%;
    background: #e8f1e6; color: #648968; cursor: pointer;
}

/* =======================================================================
   CAPSULE CARDS: moderate height, real circular images, centered actions
   ======================================================================= */
#ss-capsule-wishlist .sw-saved-section { margin-top: 22px; }
#ss-capsule-wishlist .sw-saved-heading p {
    max-width: 330px; margin: 0; color: #839587;
    font-size: 12px; line-height: 1.55; text-align: right;
}
#ss-capsule-wishlist .ss-wishlist-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 292px));
    justify-content: center;
    align-items: start;
    gap: 20px;
    width: 100%;
    margin: 0 auto;
}
#ss-capsule-wishlist .ss-wishlist-grid:empty { display: none; }
#ss-capsule-wishlist .ss-wishlist-card {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    width: 100%; min-width: 0;
    min-height: 360px;
    margin: 0;
    padding: 23px 24px 23px;
    overflow: hidden;
    border: 1px solid #d8e5d7;
    border-radius: 160px;
    background: linear-gradient(165deg, #fff 8%, #f5f9f3 82%);
    box-shadow: inset 0 0 0 5px rgba(255,255,255,.75), 0 10px 25px rgba(35,70,42,.055);
    text-align: center;
    transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}
#ss-capsule-wishlist .ss-wishlist-card:hover {
    transform: translateY(-4px); border-color: #afcbb3;
    box-shadow: inset 0 0 0 5px #fff, 0 16px 33px rgba(35,70,42,.10);
}
#ss-capsule-wishlist .ss-wishlist-card-image {
    position: relative;
    display: grid;
    place-items: center;
    flex: 0 0 126px;
    width: 126px; height: 126px;
    min-height: 126px;
    margin: 13px auto 11px;
    padding: 0;
    overflow: hidden;
    border: 1px solid #dae7d9;
    border-radius: 50%;
    background: radial-gradient(circle at 30% 20%, #fff, #eaf3e7);
    box-shadow: 0 7px 18px rgba(36,72,43,.05);
}
#ss-capsule-wishlist .ss-wishlist-card-image img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    padding: 9px;
    border-radius: 50%;
    object-fit: contain !important;
    object-position: center !important;
}
#ss-capsule-wishlist .ss-wishlist-placeholder {
    display: grid; place-items: center;
    width: 100%; height: 100%;
    color: #7da583; font-size: 49px;
}
/* Both old JS "Remove from Wishlist" and new JS "×" become a neat control. */
#ss-capsule-wishlist .ss-wishlist-remove {
    position: absolute;
    z-index: 4;
    top: 27px; right: 45px;
    display: grid;
    place-items: center;
    width: 32px; height: 32px;
    min-width: 32px; min-height: 32px;
    margin: 0; padding: 0;
    overflow: hidden;
    border: 1px solid #dce8d9;
    border-radius: 50%;
    background: #fff; color: transparent;
    font-size: 0 !important;
    line-height: 0 !important;
    cursor: pointer;
    transition: background .2s ease, transform .2s ease;
}
#ss-capsule-wishlist .ss-wishlist-remove::before {
    content: "";
    display: block; width: 15px; height: 15px;
    background: #6c8771;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6 6 18M6 6l12 12'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6 6 18M6 6l12 12'/%3E%3C/svg%3E") center / contain no-repeat;
}
#ss-capsule-wishlist .ss-wishlist-remove:hover {
    background: #fbefed; transform: scale(1.05);
}
#ss-capsule-wishlist .ss-wishlist-remove:hover::before { background: #a75a52; }
#ss-capsule-wishlist .ss-wishlist-card-body {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;
    width: 100%; min-width: 0;
}
#ss-capsule-wishlist .ss-wishlist-type-badge {
    position: static;
    display: inline-block;
    padding: 0;
    border: 0;
    background: none;
    color: #75997d;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}
#ss-capsule-wishlist .ss-wishlist-card h3 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    width: 100%; max-width: 240px;
    min-height: 43px;
    margin: 7px 0 11px;
    overflow: hidden;
    overflow-wrap: anywhere;
    color: #294d37;
    font-family: "DM Serif Display", Georgia, serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.15;
    text-align: center;
}
#ss-capsule-wishlist .ss-wishlist-view {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 36px;
    padding: 8px 16px;
    border-radius: 999px;
    background: var(--sw-forest);
    color: #fff;
    font-size: 11px;
    font-weight: 800;
    transition: background .2s ease, transform .2s ease;
}
#ss-capsule-wishlist .ss-wishlist-view:hover {
    background: var(--sw-forest-dark); color: #fff; transform: translateY(-2px);
}
#ss-capsule-wishlist .ss-wishlist-view-disabled {
    background: #e5ece3; color: #809385;
}

/* New JS renders these in a native expandable <details>. */
#ss-capsule-wishlist .ss-wishlist-more {
    width: 100%; margin-top: 11px;
}
#ss-capsule-wishlist .ss-wishlist-more summary {
    display: flex; justify-content: center; align-items: center; gap: 8px;
    min-height: 32px;
    list-style: none;
    color: #63856a; font-size: 12px; font-weight: 800;
    cursor: pointer;
}
#ss-capsule-wishlist .ss-wishlist-more summary::-webkit-details-marker { display: none; }
#ss-capsule-wishlist .ss-wishlist-more summary span { font-size: 16px; }
#ss-capsule-wishlist .ss-wishlist-more-content {
    padding: 11px 0 2px;
    border-top: 1px solid #e0eade;
    text-align: left;
}
/* Keep the expanded panel visually balanced, rather than a giant capsule. */
#ss-capsule-wishlist .ss-wishlist-card:has(.ss-wishlist-more[open]) {
    border-radius: 65px;
}

/* Old JS renders notes and collections directly; keep both usable. */
#ss-capsule-wishlist .ss-wishlist-notes-label,
#ss-capsule-wishlist .ss-wishlist-card-collections > strong {
    display: block; width: 100%;
    margin: 11px 0 8px;
    color: #426b4c;
    font-size: 11px;
    font-weight: 800;
    text-align: center;
}
#ss-capsule-wishlist .ss-wishlist-notes {
    display: block;
    width: 100%;
    min-height: 68px;
    max-height: 135px;
    padding: 9px 11px;
    border: 1px solid #d7e5d6;
    border-radius: 12px;
    outline: 0;
    resize: vertical;
    background: #fff;
    color: var(--sw-forest);
    font-size: 11px;
    line-height: 1.55;
    text-align: left;
}
#ss-capsule-wishlist .ss-wishlist-notes:focus {
    border-color: #83ab89;
    box-shadow: 0 0 0 3px rgba(104,151,113,.11);
}

/* =======================================================================
   COLLECTION ICON ROW — CRISP MONOCHROME VECTORS, NOT FONT GLYPHS
   Each checkbox keeps its real accessible collection name.
   ======================================================================= */
#ss-capsule-wishlist .ss-wishlist-card-collections {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    align-content: start;
    gap: 9px;
    width: 100%;
    min-width: 0;
    margin-top: 8px;
    padding: 0 2px 2px;
}
#ss-capsule-wishlist .ss-wishlist-card-collections > strong,
#ss-capsule-wishlist .ss-wishlist-card-collections > small {
    flex: 0 0 100%;
    margin: 0 0 3px;
    text-align: center;
}
#ss-capsule-wishlist .ss-wishlist-collection-option {
    position: relative !important;
    display: inline-grid !important;
    place-items: center !important;
    flex: 0 0 43px;
    width: 43px !important;
    height: 43px !important;
    min-width: 43px;
    min-height: 43px;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden;
    border: 1px solid #d9e5d8;
    border-radius: 50%;
    background: #fff;
    color: #356d49;
    font-size: 0 !important; /* hides old JS bare text nodes */
    line-height: 0 !important;
    cursor: pointer;
    transition: background .2s ease, border-color .2s ease, transform .2s ease;
}
/* Hide the icon/text <span> from the newer JS; SVG pseudo element takes over. */
#ss-capsule-wishlist .ss-wishlist-collection-option > span { display: none !important; }
#ss-capsule-wishlist .ss-wishlist-collection-option > input[type="checkbox"] {
    position: absolute !important;
    inset: 0 !important;
    z-index: 2;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 0 !important;
    cursor: pointer;
}
/* All icons are drawn using the same vector stroke, eliminating the
   colored / offset emoji glyphs visible in the screenshot. */
/* PERFECT CENTER ALIGNMENT — COLLECTION ICONS */

#ss-capsule-wishlist .ss-wishlist-collection-option::after {
    content: "" !important;

    position: absolute !important;
    top: 50% !important;
    left: 50% !important;

    width: 23px !important;
    height: 23px !important;

    margin: 0 !important;
    padding: 0 !important;

    transform: translate(-50%, -50%) !important;

    background-color: #477b55;
    pointer-events: none;

    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.8 4.6a5.5 5.5 0 0 0-7.8 0L12 5.7l-1.1-1.1a5.5 5.5 0 0 0-7.8 7.8L12 21l8.8-8.6a5.5 5.5 0 0 0 0-7.8Z'/%3E%3C/svg%3E") center / contain no-repeat;

    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.8 4.6a5.5 5.5 0 0 0-7.8 0L12 5.7l-1.1-1.1a5.5 5.5 0 0 0-7.8 7.8L12 21l8.8-8.6a5.5 5.5 0 0 0 0-7.8Z'/%3E%3C/svg%3E") center / contain no-repeat;
}
/* Want to Try — crisp sparkle */
#ss-capsule-wishlist .ss-wishlist-collection-option:has(input[data-collection-name="Want to Try"])::after {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.85' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 2 1.9 7.2L21 12l-7.1 2.8L12 22l-1.9-7.2L3 12l7.1-2.8L12 2Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.85' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 2 1.9 7.2L21 12l-7.1 2.8L12 22l-1.9-7.2L3 12l7.1-2.8L12 2Z'/%3E%3C/svg%3E");
}
/* Morning Routine — crisp sun */
#ss-capsule-wishlist .ss-wishlist-collection-option:has(input[data-collection-name="Morning Routine"])::after {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.85' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2M12 20v2M4.93 4.93l1.42 1.42M17.65 17.65l1.42 1.42M2 12h2M20 12h2M4.93 19.07l1.42-1.42M17.65 6.35l1.42-1.42'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.85' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2M12 20v2M4.93 4.93l1.42 1.42M17.65 17.65l1.42 1.42M2 12h2M20 12h2M4.93 19.07l1.42-1.42M17.65 6.35l1.42-1.42'/%3E%3C/svg%3E");
}
/* Night Routine — crisp moon */
#ss-capsule-wishlist .ss-wishlist-collection-option:has(input[data-collection-name="Night Routine"])::after {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.9 13a9 9 0 0 1-9.9-9.9A9 9 0 1 0 20.9 13Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.9 13a9 9 0 0 1-9.9-9.9A9 9 0 1 0 20.9 13Z'/%3E%3C/svg%3E");
}
#ss-capsule-wishlist .ss-wishlist-collection-option:has(input:checked) {
    border-color: var(--sw-forest);
    background: var(--sw-forest);
}
#ss-capsule-wishlist .ss-wishlist-collection-option:has(input:checked)::after {
    background-color: #fff;
}
#ss-capsule-wishlist .ss-wishlist-collection-option:hover {
    transform: translateY(-2px); border-color: #9fc5a5;
}
#ss-capsule-wishlist .ss-wishlist-collection-option:has(input:focus-visible) {
    outline: 2px solid #83b28a; outline-offset: 3px;
}

/* --- Empty state, footer, feedback toast --- */
#ss-capsule-wishlist .ss-wishlist-empty {
    padding: 34px 20px; border: 1px dashed #cbdcca;
    border-radius: 17px; background: #f0f6ee; text-align: center;
}
#ss-capsule-wishlist .sw-empty-icon {
    display: block; color: #789d7e; font-size: 46px;
}
#ss-capsule-wishlist .ss-wishlist-empty h3 {
    margin: 6px 0 9px; color: var(--sw-forest);
    font-family: "DM Serif Display", Georgia, serif;
    font-size: 27px; font-weight: 400;
}
#ss-capsule-wishlist .ss-wishlist-empty p {
    max-width: 460px; margin: auto; color: var(--sw-muted);
    font-size: 12px; line-height: 1.7;
}
#ss-capsule-wishlist .sw-empty-actions {
    display: flex; flex-wrap: wrap; justify-content: center;
    gap: 9px; margin-top: 18px;
}
#ss-capsule-wishlist .sw-empty-actions a {
    padding: 10px 15px; border: 1px solid #cbdcca; border-radius: 999px;
    background: #fff; color: #487953; font-size: 12px; font-weight: 800;
}
#ss-capsule-wishlist .sw-empty-actions a:first-child {
    background: var(--sw-forest); border-color: var(--sw-forest); color: #fff;
}
#ss-capsule-wishlist .sw-footer-note {
    display: flex; align-items: center; gap: 11px;
    margin-top: 27px; padding: 14px 17px;
    border-radius: 12px; background: #edf4eb; color: #718c77;
}
#ss-capsule-wishlist .sw-footer-note > span { font-size: 23px; }
#ss-capsule-wishlist .sw-footer-note p { flex: 1; margin: 0; font-size: 11px; }
#ss-capsule-wishlist .sw-footer-note a {
    color: #4c8057; font-size: 11px; font-weight: 800;
}
#ss-capsule-wishlist .ss-wishlist-toast {
    position: fixed; z-index: 10000; right: 21px; bottom: 21px;
    max-width: min(340px, calc(100vw - 30px));
    padding: 12px 17px; border-radius: 11px;
    background: var(--sw-forest); color: #fff; font-size: 12px;
    box-shadow: 0 14px 29px rgba(28,63,38,.18);
    opacity: 0; visibility: hidden; transform: translateY(8px);
    transition: opacity .2s, visibility .2s, transform .2s;
}
#ss-capsule-wishlist .ss-wishlist-toast.visible {
    opacity: 1; visibility: visible; transform: translateY(0);
}

/* =======================================================================
   RESPONSIVE: 4 wide / 3 laptop / 2 tablet / 1 phone
   ======================================================================= */
@media (min-width: 1420px) {
    #ss-capsule-wishlist .ss-wishlist-grid {
        grid-template-columns: repeat(4, minmax(0, 292px));
        gap: 18px;
    }
}
@media (max-width: 1050px) {
    #ss-capsule-wishlist .ss-wishlist-toolbar {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    #ss-capsule-wishlist .sw-search-wrap { grid-column: 1 / -1; }
    #ss-capsule-wishlist .ss-wishlist-grid {
        grid-template-columns: repeat(2, minmax(0, 292px));
        gap: 17px;
    }
    #ss-capsule-wishlist .ss-wishlist-collections-panel {
        flex-wrap: wrap;
    }
}
@media (max-width: 650px) {
    #ss-capsule-wishlist { padding: 15px 0 37px; }
    #ss-capsule-wishlist .ss-wishlist-wrap {
        width: calc(100% - 28px);
    }
    #ss-capsule-wishlist .ss-wishlist-heading {
        flex-direction: column; align-items: flex-start;
        padding: 21px 19px;
    }
    #ss-capsule-wishlist .ss-wishlist-heading h1 { font-size: 35px; }
    #ss-capsule-wishlist .ss-wishlist-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    #ss-capsule-wishlist .ss-wishlist-stat { padding: 10px; }
    #ss-capsule-wishlist .sw-section-heading {
        flex-direction: column; align-items: flex-start; gap: 8px;
    }
    #ss-capsule-wishlist .sw-saved-heading p { text-align: left; }
    #ss-capsule-wishlist .ss-wishlist-toolbar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    #ss-capsule-wishlist .sw-search-wrap { grid-column: 1 / -1; }
    #ss-capsule-wishlist .sw-select-wrap:last-child { grid-column: 1 / -1; }
    #ss-capsule-wishlist .ss-wishlist-collections-panel {
        flex-direction: column; align-items: stretch;
    }
    #ss-capsule-wishlist #ss-wishlist-create-collection { width: 100%; }
    #ss-capsule-wishlist #ss-wishlist-new-collection { flex: 1; width: 100%; }
    #ss-capsule-wishlist .ss-wishlist-grid {
        grid-template-columns: minmax(0, 292px);
        justify-content: center;
    }
    #ss-capsule-wishlist .sw-footer-note { flex-wrap: wrap; }
    #ss-capsule-wishlist .sw-footer-note a { margin-left: 32px; }
}
@media (max-width: 370px) {
    #ss-capsule-wishlist .ss-wishlist-wrap {
        width: calc(100% - 20px);
    }
    #ss-capsule-wishlist .ss-wishlist-toolbar { grid-template-columns: 1fr; }
    #ss-capsule-wishlist .sw-search-wrap,
    #ss-capsule-wishlist .sw-select-wrap:last-child { grid-column: auto; }
    #ss-capsule-wishlist #ss-wishlist-create-collection { flex-direction: column; }
    #ss-capsule-wishlist .ss-wishlist-grid {
        grid-template-columns: minmax(0, 100%);
    }
    #ss-capsule-wishlist .ss-wishlist-card { padding-inline: 18px; }
}

#ss-capsule-wishlist :is(a, button, input, select, textarea, summary):focus-visible {
    outline: 2px solid #82ad89; outline-offset: 3px;
}
@media (prefers-reduced-motion: reduce) {
    #ss-capsule-wishlist *,
    #ss-capsule-wishlist *::before,
    #ss-capsule-wishlist *::after {
        animation: none !important; transition: none !important;
    }
}
