.vseti-wishlist-library { min-height: 240px; color: #eff3f4; }
.vseti-wishlist-head { min-height: 58px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 16px; border-bottom: 1px solid #2f3336; background: #000; }
.vseti-wishlist-head__copy { min-width: 0; }
.vseti-wishlist-head__copy strong, .vseti-wishlist-head__copy small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.vseti-wishlist-head__copy strong { font-size: 18px; }
.vseti-wishlist-head__copy small { margin-top: 2px; color: #71767b; font-size: 12px; }
.vseti-wishlist-head__actions { display: flex; align-items: center; gap: 8px; }
.vseti-wishlist-head--album { display: flex; min-height: 74px; }
.vseti-wishlist-head__start { min-width: 0; flex: 1 1 auto; display: flex; align-items: center; gap: 12px; }
.vseti-wishlist-head__back { flex: 0 0 auto; }
.vseti-wishlist-head--album .vseti-wishlist-head__actions { flex: 0 0 auto; }
.vseti-wishlist-head__identity { min-width: 0; display: flex; align-items: center; justify-content: flex-start; gap: 12px; }
.vseti-wishlist-head__identity .vseti-wishlist-head__copy { min-width: 0; text-align: left; }
.vseti-wishlist-icon, .vseti-wishlist-add { width: 40px; height: 40px; display: grid; place-items: center; flex: 0 0 auto; border: 0; border-radius: 50%; background: #1d9bf0; color: #fff; font-size: 20px; cursor: pointer; }
.vseti-wishlist-icon { background: #202327; font-size: 16px; }
.vseti-wishlist-icon:hover { background: #2a2d31; }
.vseti-wishlist-add:hover { background: #1a8cd8; }
.vseti-wishlist-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; padding: 14px; }
.vseti-wishlist-card { min-width: 0; border: 0; padding: 0; background: transparent; color: inherit; text-align: left; cursor: pointer; }
.vseti-wishlist-card__cover { position: relative; width: 100%; display: block; aspect-ratio: 1; overflow: hidden; border: 1px solid #2f3336; border-radius: 17px; background: #16181c; }
.vseti-wishlist-card__cover img { width: 100%; height: 100%; object-fit: cover; transition: transform .2s ease; }
.vseti-wishlist-card:hover .vseti-wishlist-card__cover img { transform: scale(1.025); }
.vseti-wishlist-card__count { position: absolute; right: 8px; bottom: 8px; display: inline-flex; align-items: center; gap: 5px; padding: 4px 8px; border-radius: 999px; background: rgba(0,0,0,.74); color: #fff; font-size: 11px; font-weight: 750; backdrop-filter: blur(8px); }
.vseti-wishlist-card__title { display: block; margin-top: 8px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 780; }
.vseti-wishlist-card__dates { display: block; margin-top: 2px; overflow: hidden; color: #71767b; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.vseti-wishlist-card__dates.expired { color: #f45d68; }
.vseti-wishlist-empty { display: grid; justify-items: center; gap: 10px; padding: 58px 22px; color: #71767b; text-align: center; }
.vseti-wishlist-empty i { color: #1d9bf0; font-size: 34px; }
.vseti-wishlist-empty strong { color: #eff3f4; font-size: 18px; }

.vseti-wishlist-album-cover { width: 48px; height: 48px; flex: 0 0 auto; overflow: hidden; border-radius: 11px; background: #16181c; }
.vseti-wishlist-album-cover img { width: 100%; height: 100%; object-fit: cover; }
.vseti-wishlist-present-card { min-width: 0; border: 0; padding: 0; background: transparent; color: inherit; text-align: left; cursor: pointer; }
.vseti-wishlist-present-card__image { position: relative; width: 100%; display: block; aspect-ratio: 1; overflow: hidden; border: 1px solid #2f3336; border-radius: 17px; background: #16181c; }
.vseti-wishlist-present-card__image img { width: 100%; height: 100%; object-fit: cover; }
.vseti-wishlist-reserved { position: absolute; inset: auto 8px 8px 8px; display: flex; align-items: center; justify-content: center; gap: 6px; min-height: 28px; padding: 4px 8px; border-radius: 999px; background: rgba(0,0,0,.76); color: #eff3f4; font-size: 11px; font-weight: 750; backdrop-filter: blur(8px); }
.vseti-wishlist-reserved.mine { background: rgba(29,155,240,.88); }
.vseti-wishlist-present-card__name { display: flex; align-items: center; gap: 6px; min-width: 0; margin-top: 8px; }
.vseti-wishlist-present-card__name strong { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.vseti-wishlist-priority { display: inline-flex; align-items: center; flex: 0 0 auto; min-height: 20px; padding: 2px 7px; border: 1px solid rgba(29,155,240,.45); border-radius: 6px; color: #1d9bf0; font-size: 10px; font-weight: 850; line-height: 1; }
.vseti-wishlist-priority[data-priority="highest"] { border-color: rgba(249,24,128,.5); color: #f91880; }
.vseti-wishlist-priority[data-priority="high"] { border-color: rgba(255,170,51,.5); color: #ffaa33; }
.vseti-wishlist-priority[data-priority="low"] { border-color: #3c4045; color: #8b98a5; }
.vseti-wishlist-price { display: block; margin-top: 3px; color: #71767b; font-size: 13px; }

.vseti-wishlist-modal { position: fixed; z-index: 23000; inset: 0; display: flex; align-items: center; justify-content: center; padding: 18px; background: rgba(0,0,0,.72); }
.vseti-wishlist-modal[hidden] { display: none !important; }
.vseti-wishlist-form { width: min(520px, 100%); max-height: min(760px, 92dvh); overflow-y: auto; border: 1px solid #2f3336; border-radius: 23px; background: #000; box-shadow: 0 22px 70px rgba(0,0,0,.65); }
.vseti-wishlist-form__head { position: sticky; top: 0; z-index: 2; min-height: 60px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 14px 8px 18px; border-bottom: 1px solid #2f3336; background: rgba(0,0,0,.96); backdrop-filter: blur(14px); }
.vseti-wishlist-form__head strong { font-size: 19px; }
.vseti-wishlist-form__close { width: 38px; height: 38px; border: 0; border-radius: 50%; background: #202327; color: #fff; cursor: pointer; }
.vseti-wishlist-form__body { display: grid; gap: 15px; padding: 18px; }
.vseti-wishlist-field { min-width: 0; display: grid; gap: 7px; color: #b4bac0; font-size: 13px; font-weight: 700; }
.vseti-wishlist-field input, .vseti-wishlist-field select { width: 100%; min-width: 0; min-height: 48px; border: 1px solid #2f3336; border-radius: 13px; outline: 0; padding: 0 13px; background: #101214; color: #eff3f4; font: inherit; font-weight: 500; }
.vseti-wishlist-field input:focus, .vseti-wishlist-field select:focus { border-color: #1d9bf0; box-shadow: 0 0 0 1px #1d9bf0; }
.vseti-wishlist-image-field { position: relative; min-height: 170px; display: grid; place-items: center; overflow: hidden; border: 1px dashed #48515a; border-radius: 16px; background: #101214; color: #8b98a5; cursor: pointer; text-align: center; }
.vseti-wishlist-image-field input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.vseti-wishlist-image-field img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.vseti-wishlist-image-field span { position: relative; z-index: 1; display: grid; justify-items: center; gap: 7px; padding: 16px; }
.vseti-wishlist-image-field.has-image span { padding: 8px 12px; border-radius: 999px; background: rgba(0,0,0,.7); color: #fff; }
.vseti-wishlist-image-field i { font-size: 27px; }
.vseti-wishlist-date-row { min-width: 0; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px; }
.vseti-wishlist-submit { min-height: 48px; border: 0; border-radius: 999px; background: #eff3f4; color: #000; font-weight: 850; cursor: pointer; }
.vseti-wishlist-submit:disabled { opacity: .55; cursor: wait; }

.vseti-wishlist-drawer { position: fixed; z-index: 22500; inset: 0; display: flex; align-items: stretch; justify-content: flex-end; background: rgba(0,0,0,.42); }
.vseti-wishlist-drawer[hidden] { display: none !important; }
.vseti-wishlist-drawer__panel { width: min(450px, 100%); height: 100%; overflow-y: auto; border-left: 1px solid #2f3336; background: #000; color: #eff3f4; box-shadow: -22px 0 65px rgba(0,0,0,.58); animation: vseti-wishlist-in .2s ease both; }
@keyframes vseti-wishlist-in { from { transform: translateX(34px); opacity: .65; } }
.vseti-wishlist-drawer__head { position: sticky; top: 0; z-index: 3; min-height: 58px; display: flex; align-items: center; gap: 10px; padding: 8px 12px 8px 16px; border-bottom: 1px solid #2f3336; background: rgba(0,0,0,.9); backdrop-filter: blur(16px); }
.vseti-wishlist-drawer__head strong { min-width: 0; flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.vseti-wishlist-drawer__close { width: 38px; height: 38px; border: 0; border-radius: 50%; background: #202327; color: #fff; cursor: pointer; }
.vseti-wishlist-gift__image { aspect-ratio: 1; overflow: hidden; background: #101214; }
.vseti-wishlist-gift__image img { width: 100%; height: 100%; object-fit: cover; }
.vseti-wishlist-gift__body { padding: 18px; }
.vseti-wishlist-gift__title { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin: 0; font-size: 24px; }
.vseti-wishlist-gift__price { margin-top: 8px; color: #eff3f4; font-size: 18px; font-weight: 760; }
.vseti-wishlist-gift__album { margin-top: 5px; color: #71767b; font-size: 13px; }
.vseti-wishlist-gift__actions { display: grid; gap: 10px; margin-top: 20px; }
.vseti-wishlist-action { min-height: 48px; display: flex; align-items: center; justify-content: center; gap: 8px; border: 1px solid #2f3336; border-radius: 999px; background: transparent; color: #eff3f4; font-weight: 800; text-decoration: none; cursor: pointer; }
.vseti-wishlist-action.primary { border-color: #eff3f4; background: #eff3f4; color: #000; }
.vseti-wishlist-action.reserved { border-color: rgba(29,155,240,.55); color: #1d9bf0; }
.vseti-wishlist-action.danger { border-color: rgba(244,33,46,.5); color: #f4212e; }
.vseti-wishlist-action.danger:hover { background: rgba(244,33,46,.1); }
.vseti-wishlist-action:disabled { cursor: default; opacity: .62; }
.vseti-wishlist-settings-summary { padding: 17px 18px; border-bottom: 1px solid #2f3336; color: #71767b; }
.vseti-wishlist-settings-tools { display: grid; gap: 10px; padding: 16px; border-bottom: 1px solid #2f3336; }
.vseti-wishlist-settings-list { display: grid; }
.vseti-wishlist-settings-row { min-height: 70px; display: flex; align-items: center; gap: 12px; padding: 9px 16px; border-bottom: 1px solid #2f3336; }
.vseti-wishlist-settings-row img { width: 48px; height: 48px; flex: 0 0 auto; border-radius: 11px; object-fit: cover; }
.vseti-wishlist-settings-row span { min-width: 0; flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 720; }
.vseti-wishlist-settings-state { flex: 0 0 auto !important; padding: 4px 8px; border-radius: 999px; background: #202327; color: #71767b; font-size: 11px; }
.vseti-wishlist-settings-state.booked { background: rgba(29,155,240,.14); color: #1d9bf0; }

@media (max-width: 700px) {
    .vseti-wishlist-grid { gap: 10px; padding: 12px; }
    .vseti-wishlist-card__cover, .vseti-wishlist-present-card__image { border-radius: 14px; }
    .vseti-wishlist-head--album { gap: 8px; padding-inline: 10px; }
    .vseti-wishlist-head__start { gap: 9px; }
    .vseti-wishlist-head__identity { gap: 8px; }
    .vseti-wishlist-head__identity .vseti-wishlist-album-cover { width: 42px; height: 42px; }
    .vseti-wishlist-head__identity .vseti-wishlist-head__copy strong { font-size: 16px; }
    .vseti-wishlist-head__identity .vseti-wishlist-head__copy small { font-size: 11px; }
    .vseti-wishlist-modal { align-items: stretch; padding: 0; background: #000; }
    .vseti-wishlist-form { width: 100%; height: 100dvh; max-height: none; border: 0; border-radius: 0; padding-bottom: env(safe-area-inset-bottom); box-shadow: none; overscroll-behavior: contain; }
    .vseti-wishlist-form__head { min-height: calc(58px + env(safe-area-inset-top)); padding-top: calc(8px + env(safe-area-inset-top)); }
    .vseti-wishlist-form__body { padding-bottom: calc(24px + env(safe-area-inset-bottom)); }
    .vseti-wishlist-drawer { align-items: stretch; background: #000; }
    .vseti-wishlist-drawer__panel { width: 100%; height: 100dvh; border: 0; border-radius: 0; padding-bottom: env(safe-area-inset-bottom); box-shadow: none; animation-name: vseti-wishlist-up; overscroll-behavior: contain; }
    .vseti-wishlist-drawer__head { min-height: calc(58px + env(safe-area-inset-top)); padding-top: calc(8px + env(safe-area-inset-top)); }
    @keyframes vseti-wishlist-up { from { transform: translateY(42px); opacity: .7; } }
}

@media (max-width: 370px) {
    .vseti-wishlist-grid { gap: 8px; padding: 9px; }
    .vseti-wishlist-date-row { grid-template-columns: 1fr; }
}
