
.tt-text{display: none;}
[data-vivgb-ss-popup]{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.6);z-index:9999;align-items:center;justify-content:center;padding:20px;box-sizing:border-box;}
[data-vivgb-ss-popup][aria-hidden="false"]{display:flex;}
.vivgb-ss-popup__panel{background:#fff;border-radius:4px;max-width:420px;width:100%;padding:24px;box-shadow:0 10px 30px rgba(0,0,0,0.15);position:relative;}
.vivgb-ss-popup__close{position:absolute;top:12px;right:12px;border:0;background:transparent;font-size:22px;line-height:1;cursor:pointer;color:#333;}
.vivgb-ss-popup__title{margin:0 0 12px;font-size:20px;font-weight:600;}
.vivgb-ss-popup__group{margin-bottom:16px;}
.vivgb-ss-popup__group label{display:block;margin-bottom:8px;font-weight:500;}
.vivgb-ss-popup__group input[type="text"]{width:100%;padding:8px 10px;border:1px solid #d4d4d4;border-radius:3px;}
.vivgb-ss-popup__group input[type="text"].vivgb-ss-error{border-color:#d63638;}
.vivgb-ss-popup__choices label{display:flex;align-items:center;margin-bottom:8px;cursor:pointer;font-weight:400;}
.vivgb-ss-popup__choices input{margin-right:8px;}
.vivgb-ss-popup__actions{display:flex;justify-content:space-between;gap:16px;margin-top:20px;}
.vivgb-ss-popup__actions button{flex:1;padding:10px 12px;border:none;border-radius:3px;cursor:pointer;font-weight:600;}
.vivgb-ss-popup__actions button[data-vivgb-ss-submit]{background:#1d7af3;color:#fff;}
.vivgb-ss-popup__actions button[data-vivgb-ss-delete]{background:#d63638;color:#fff;display:none;}
.vivgb-ss-wrapper{padding:10px;font-size:14px;border:1px solid rgba(0,0,0,0.05);border-radius:4px;}
.vivgb-ss-button{padding:8px 14px;border:none;border-radius:3px;background:#1d7af3;color:#fff;font-weight:600;cursor:pointer;transition:opacity .2s;}
.vivgb-ss-button[disabled]{opacity:.5;cursor:not-allowed;}
.vivgb-ss-list{list-style:none;margin:12px 0 0;padding:0;}
.vivgb-ss-item{display:flex;align-items:center;gap:8px;margin-bottom:8px;}
.vivgb-ss-link{flex:1;color:#1d1d1d;text-decoration:none;font-weight:500;}
.vivgb-ss-link:hover{text-decoration:underline;}
.vivgb-ss-action{width:28px;height:28px;border:0;border-radius:3px;background:transparent;cursor:pointer;position:relative;}
.vivgb-ss-action::before{content:'';position:absolute;inset:0;background-repeat:no-repeat;background-position:center;background-size:20px 20px;}
.vivgb-ss-edit::before{background-image:url(../img/edit-line.svg);}
.vivgb-ss-delete::before{background-image:url(../img/delete-bin-line.svg);}
.vivgb-ss-meta{font-size:12px;color:#555;margin-left:auto;}
.vivgb-ss-login-hint{margin-top:12px;font-size:13px;color:#444;}
.vivgb-ss-link i{display:inline-block;width:15px;height:15px;margin-left:6px;mask-image:url(../img/i.svg);mask-size:100% auto;background-color:#1D7AF3;mask-repeat:no-repeat;}
.vivgb-ss-label-group{display:block;}
.vivgb-ss-loading {
    opacity: 0.6;
    pointer-events: none;
    position: relative;
}
.vivgb-ss-loading::before {
    animation: spin 1s linear infinite !important;
}

.vivgb-ss-submitting {
    opacity: 0.7;
    pointer-events: none;
}

button.vivgb-ss-loading::after {
    content: "";
    position: absolute;
    width: 16px;
    height: 16px;
    top: 50%;
    left: 50%;
    margin: -8px 0 0 -8px;
    border: 2px solid #fff;
    border-top-color: transparent;
    border-radius: 50%;
    animation: spin 0.6s linear infinite;
}

@keyframes spin {
    to { transform: rotate(360deg); }
}

/* Hide email settings for guest users */
[data-vivgb-ss-popup][data-is-guest="1"] .vivgb-ss-email-settings {
    display: none !important;
}

/*
 * Optional: hide the facet when there are no saved searches to show.
 * Opt in by adding the `vivgb-ss-hide-when-empty` class to the facet wrapper
 * (e.g. via the vivgb_ss_facet_markup filter or a WPGB facet CSS class).
 * NOTE: this used to hard-target a site-specific slug ([data-slug="save_search"]);
 * that coupling was removed for portability. On this site the theme keeps its
 * own slug-scoped rule.
 */
.vivgb-ss-hide-when-empty:not(:has(.vivgb-ss-list li)){display:none;}