/* V4 identity: ink navigation, berry actions, teal status, compact portrait indexes. */
html.site-v4, body.site-v4 { background: #f6f7f9; color: #252830; }
body.site-v4 { --v4-accent: #a1274d; --v4-rose: #faeaf0; --v4-green: #24756c; --v4-muted: #68717d; --v4-line: #dce0e5; --v4-rail: 210px; }
body.site-v4 h1, body.site-v4 h2, body.site-v4 h3, body.site-v4 h4, body.site-v4 h5, body.site-v4 h6 { color: #252830; }
body.site-v4 h2, body.site-v4 h3 { font-family: var(--v4-font); font-weight: 600; }
body.site-v4 .main { padding-inline: 32px; }
body.site-v4 .top { height: 80px; background: transparent; border-bottom-color: #dce0e5; }
body.site-v4 .top::before { background: #252830; border-right: 0; }
body.site-v4 .top .logo { top: 20px; left: 20px; display: flex; align-items: center; gap: 8px; width: 170px; min-width: 0; height: 40px; font: 700 22px/1.15 var(--v4-font); color: #fff; white-space: nowrap; overflow-wrap: normal; }
body.site-v4 .v4-brand-mark { display: block; flex: 0 0 auto; width: 34px; height: 34px; max-width: none; object-fit: contain; }
body.site-v4 .v4-wordmark { display: block; flex: 0 1 auto; min-width: 0; padding-block: 3px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
body.site-v4 .top .menu { inset-block-start: 100px; padding-inline: 12px; }
body.site-v4 .top .menu a { gap: 12px; padding: 12px; min-height: 48px; border-radius: 5px; color: #d2d5dd; font-size: 14px; white-space: nowrap; overflow: hidden; }
body.site-v4 .top .menu a:hover { color: #fff; background: #373b45; }
body.site-v4 .top .menu a.selected { background: #fbe4ec; color: #8d2244; }
body.site-v4 .top .menu a[data-name=credits], body.site-v4 .top .menu a[data-name=subscription] { border-top-color: #464b57; }
body.site-v4 .top .menu a span { background: #454b58; color: #fff; font-size: 11px; }
body.site-v4 .top .menu a.selected span { background: #a1274d; color: #fff; }
body.site-v4 .v4-nav-icon { width: 26px; height: 26px; flex-basis: 26px; }
body.site-v4 .v4-page-header { padding: 25px 0 22px; gap: 14px; }
body.site-v4 .v4-page-header h1 { font: 600 28px/1.25 var(--v4-font); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; }
body.site-v4 .v4-search-toggle { border-radius: 5px; font-size: 14px; }
body.site-v4 .top .login { border-radius: 5px; text-transform: none; }
body.site-v4 .top .login[data-name=myProfile] { max-width: 220px; min-width: 0; background: #fff; }
body.site-v4 .top .login[data-name=myProfile] > img { flex-shrink: 0; border-radius: 4px; }
body.site-v4 .top .login[data-name=myProfile] .v4-single-name { font-size: 13px; background: none; color: #252830; padding: 0; margin: 0; }

/* Lucide ChevronDown, also visible when mobile browsers suppress native arrows. */
body.site-v4 select:not([multiple]):is(:not([size]), [size="0"], [size="1"]) { -webkit-appearance: none !important; appearance: none !important; padding-right: 32px !important; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2368717d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important; background-repeat: no-repeat !important; background-position: right 9px center !important; background-size: 16px 16px !important; }
body.site-v4 select:disabled { opacity: .6; }
@media (max-width: 760px) {
  body.site-v4 select.v4-settings-select:not([multiple]):is(:not([size]), [size="0"], [size="1"]) { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important; }
}
@media (forced-colors: active) {
  html.site-v4 body.site-v4 select:not([multiple]):is(:not([size]), [size="0"], [size="1"]) { appearance: auto !important; background-image: none !important; }
}

/* The old icon class names remain as behavioral hooks; only local SVGs draw icons. */
body.site-v4 .v4-icon { display: inline-flex !important; position: relative !important; align-items: center; justify-content: center; width: 22px !important; height: 22px !important; min-width: 22px; flex-shrink: 0; padding: 0 !important; margin: 0; border: 0 !important; border-radius: 0 !important; background: none !important; box-shadow: none !important; transform: none !important; color: inherit; font-size: 0 !important; line-height: 0 !important; vertical-align: middle; animation: none; }
body.site-v4 .v4-icon::before, body.site-v4 .v4-icon::after { content: none !important; display: none !important; }
body.site-v4 .v4-icon > svg { display: block; width: 100%; height: 100%; overflow: visible; }
body.site-v4 .v4-nav-icon svg > :first-child, body.site-v4 .v4-settings-nav svg > :first-child { fill: currentColor; fill-opacity: .12; }
body.site-v4 .v4-icon[data-v4-icon=spinner] > svg, body.site-v4 .v4-icon[data-v4-icon=loadbar-alt] > svg { animation: v4-turn 1s linear infinite; }
body.site-v4 img.v4-legacy-icon { display: none !important; }
body.site-v4 .v4-profile-actions .v4-raster-replacement { display: none !important; }
body.site-v4 .v4-icon[hidden] { display: none !important; }
body.site-v4 .closeErrorB.v4-icon, body.site-v4 .closeError.v4-icon { position: absolute !important; right: 12px; top: 12px; width: 32px !important; height: 32px !important; padding: 5px !important; color: var(--v4-accent); cursor: pointer; }
body.site-v4 .messageFilters .search .clear.v4-icon { position: absolute !important; right: 8px; top: 9px; width: 22px !important; height: 22px !important; }
body.site-v4 .locLoaderPin.v4-icon { position: absolute !important; right: 10px; top: 10px; cursor: pointer; }
body.site-v4 .messageItem .status .v4-icon { width: 14px !important; height: 14px !important; min-width: 14px; margin-right: 3px; }
body.site-v4 .messageItem .time .v4-icon, body.site-v4 .profilePic .info .v4-icon { width: 16px !important; height: 16px !important; min-width: 16px; margin: 0 5px 0 0; }
body.site-v4 .v4-gifts-intro > .v4-icon, body.site-v4 .v4-search-empty > .v4-icon, body.site-v4 .v4-wallet-balance > .v4-icon { width: 36px !important; height: 36px !important; margin: 0; }
body.site-v4 .v4-gift-cover > .v4-icon:first-child { width: 38px !important; height: 38px !important; }
@keyframes v4-turn { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { body.site-v4 .v4-icon > svg { animation-duration: 2s !important; } }

/* One density system for home, matches, search and related profiles. */
body.site-v4 .v4-profile-grid, body.site-v4[data-v4-page=home] .v4-profile-grid, body.site-v4 .v4-search-content.v4-profile-grid { grid-template-columns: repeat(auto-fill, minmax(145px, 1fr)); gap: 24px 18px; }
body.site-v4 .container .homePro .inner { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-rows: auto 22px auto; gap: 0 6px; font-size: 14px; }
body.site-v4 .container .homePro .inner img { grid-column: 1 / -1; width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 5px; margin-bottom: 10px; background: #e8ebee; }
body.site-v4 .container .homePro .inner .v4-card-name { display: block; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font: 600 14px/22px var(--v4-font); }
body.site-v4 .container .homePro .inner > span { display: block; align-self: center; padding: 0; color: #68717d; font-size: 12px; white-space: nowrap; }
body.site-v4 .container .homePro .v4-card-region { grid-column: 1 / -1; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin: 2px 0 0; padding: 0; font-size: 12px; }
body.site-v4 .container .homePro:hover .v4-card-name { color: var(--v4-accent); }
body.site-v4 .container .homePro:hover img { outline: 2px solid #d7abb9; outline-offset: 3px; }
body.site-v4 .v4-single-name, body.site-v4 .v4-chat-heading strong, body.site-v4 .v4-settings-identity strong { display: block; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; overflow-wrap: normal; }
body.site-v4 .messageItem .info .name, body.site-v4 .v4-profile-story .profileBlock .profilePic h3 { display: flex; gap: 9px; align-items: baseline; width: 100%; min-width: 0; }
body.site-v4 .messageItem .info .name > .v4-single-name { font: 600 15px/1.4 var(--v4-font); padding: 0; color: #252830; }
body.site-v4 .messageItem .info .name > span:not(.v4-single-name) { flex-shrink: 0; font-size: 12px; }
body.site-v4 .messageItem .info { flex: 1; padding-right: 52px; }
body.site-v4 .messageItem .info .status { max-width: 52px; white-space: nowrap; overflow: hidden; }
body.site-v4 .v4-profile-story .profileBlock .aboutMe .detail .v4-single-name { color: #252830; font-size: 14px; margin: 0; }
body.site-v4 .v4-profile-story .profileBlock .profilePic .right .info { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; }
body.site-v4 .v4-profile-story .profilePic .info > [class^=spacer-] { display: none; }
body.site-v4 .v4-profile-fact { display: flex; align-items: center; gap: 5px; }

/* Search controls stay together, with explicit active filters and bounded paging. */
body.site-v4 .v4-search-layout { display: block; }
body.site-v4 .v4-search-layout .searchBlock { width: 100%; padding: 22px 0 24px; background: none; border-block: 1px solid var(--v4-line); }
body.site-v4 .v4-search-layout .searchBlock > h2 { display: none; }
body.site-v4 .v4-search-layout .searchingFormElement { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px 22px; align-items: end; }
body.site-v4 .v4-search-layout .searchBlock .searchItem { width: 100%; min-width: 0; font-size: 14px; }
body.site-v4 .v4-search-layout .searchBlock .searcher { font-size: 13px; color: #525c69; }
body.site-v4 .v4-search-layout input, body.site-v4 .v4-search-layout select { border-radius: 4px; }
body.site-v4 .v4-search-actions { grid-column: 1 / -1; justify-content: flex-end; border: 0; padding-top: 4px; }
body.site-v4 .v4-search-actions .searchButton { flex: 0 0 auto; min-width: 125px; padding: 11px 18px; text-transform: none; }
body.site-v4 .v4-results-heading { align-items: center; margin-top: 22px; margin-bottom: 0; min-height: 52px; }
body.site-v4 .v4-results-heading h2 { font-size: 16px; text-transform: none; }
body.site-v4 .v4-results-count { font: 600 18px/1.2 var(--v4-font); }
body.site-v4 .v4-active-filters { display: flex; flex-wrap: wrap; gap: 8px; padding: 16px 0 22px; }
body.site-v4 .v4-active-filters .v4-action { gap: 6px; padding: 6px 9px; min-height: 34px; border: 0; background: #e7eeef; color: #2a5f5a; font-size: 12px; max-width: 100%; }
body.site-v4 .v4-active-filters .v4-action span { min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
body.site-v4 .v4-active-filters .v4-icon { width: 16px !important; height: 16px !important; min-width: 16px; }
body.site-v4 .v4-search-empty { grid-column: 1 / -1; min-height: 230px; display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 18px; color: var(--v4-muted); border-bottom: 1px solid var(--v4-line); }
body.site-v4 .v4-search-empty h3 { margin: 0; font-size: 18px; text-align: center; }
body.site-v4 .pageNumbers { grid-column: 1 / -1; display: flex; justify-content: center; align-items: center; gap: 6px; padding: 24px 0 8px; margin: 0; border-top: 1px solid var(--v4-line); }
body.site-v4 .pageNumbers .filter { display: inline-flex; align-items: center; justify-content: center; min-width: 38px; height: 38px; padding: 8px; font-size: 13px; background: #fff; border: 1px solid var(--v4-line); border-radius: 4px; }
body.site-v4 .pageNumbers .filter.selected { color: #fff; background: #252830; border-color: #252830; }
body.site-v4 .v4-page-gap { color: var(--v4-muted); }
body.site-v4 .v4-collection-results[aria-busy=true] { opacity: .55; }

body.site-v4[data-v4-page=likes] .v4-like-filters .filter.selected { background: #fbe4ec; color: #8d2244; }
body.site-v4[data-v4-page=likes] .container .homePro .inner { grid-template-columns: 80px minmax(0, 1fr); grid-template-rows: 1fr auto 1fr; min-height: 90px; gap: 3px 16px; }
body.site-v4[data-v4-page=likes] .container .homePro .inner img { grid-column: 1; grid-row: 1 / 4; width: 80px; height: 90px; margin: 0; }
body.site-v4[data-v4-page=likes] .container .homePro .inner .v4-card-name { grid-column: 2; grid-row: 1; align-self: end; padding: 0; font-size: 15px; }
body.site-v4[data-v4-page=likes] .container .homePro .inner > span { grid-column: 2; grid-row: 2; }
body.site-v4[data-v4-page=likes] .container .homePro .v4-card-region { grid-column: 2; grid-row: 3; align-self: start; }
body.site-v4 .top .notifications .item h5 { display: flex; align-items: center; gap: 8px; min-width: 0; padding-right: 28px; }
body.site-v4 .top .notifications .item h5 img { float: none; flex-shrink: 0; }
body.site-v4 .top .notifications { position: fixed; top: var(--v4-noti-top, 72px); left: var(--v4-noti-left, auto); right: 12px; margin: 0; min-height: 0; max-height: var(--v4-noti-height, calc(100dvh - 84px)) !important; box-sizing: border-box; overscroll-behavior: contain; }

/* Photo tools have their own space, independent of the portrait dimensions. */
body.site-v4 .v4-photo-settings .innerPictures { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 20px 16px; align-items: start; max-width: 860px; min-height: 0; height: auto; padding: 24px 0; margin: 0; overflow: visible; }
body.site-v4 .v4-photo-settings .innerPicture { position: relative; display: block; width: 100%; max-width: 220px; min-width: 0; height: auto; margin: 0; padding: 6px; background: #fff; border: 1px solid var(--v4-line); border-radius: 7px; }
body.site-v4 .v4-photo-settings .innerPicture:has(> img.selected) { border-color: var(--v4-green); box-shadow: 0 0 0 1px var(--v4-green); }
body.site-v4 .v4-photo-settings .innerPicture > img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; margin: 0; object-fit: cover; border: 0; border-radius: 3px; }
body.site-v4 .v4-photo-settings .innerPicture > img:hover { border: 0; filter: brightness(1.04); }
body.site-v4 .v4-photo-settings .innerPicture > .clear { display: none; }
body.site-v4 .v4-photo-tools { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2px; padding-top: 6px; }
body.site-v4 .v4-photo-tool { display: inline-flex; align-items: center; justify-content: center; width: 100%; min-width: 0; height: 44px; padding: 0; margin: 0; float: none; border: 0; border-radius: 4px; background: transparent; color: #53616a; cursor: pointer; }
body.site-v4 .v4-photo-tool:hover { color: #252830; background: #eef1f4; }
body.site-v4 .v4-photo-tool.privatePic[aria-pressed=true] { color: var(--v4-green); background: #e7f1ee; }
body.site-v4 .v4-photo-tool.gg-trash { color: var(--v4-accent); }
body.site-v4 .v4-photo-tool.gg-trash:hover { background: var(--v4-rose); }
body.site-v4 .v4-photo-tool:focus-visible, body.site-v4 .v4-photo-settings .innerPicture > img:focus-visible { outline: 2px solid var(--v4-accent); outline-offset: 2px; }
body.site-v4 .v4-photo-tool .v4-icon { pointer-events: none; width: 20px !important; height: 20px !important; min-width: 20px; }
body.site-v4 .v4-photo-primary { display: none; position: absolute; top: 14px; left: 14px; width: 28px; height: 28px; align-items: center; justify-content: center; color: #fff; background: var(--v4-green); border: 2px solid #fff; border-radius: 50%; pointer-events: none; }
body.site-v4 .innerPicture:has(> img.selected) > .v4-photo-primary { display: flex; }
body.site-v4 .v4-photo-primary .v4-icon { width: 16px !important; height: 16px !important; min-width: 16px; }
body.site-v4 .v4-photo-settings .uploadProPicButton.v4-settings-action { display: inline-flex; width: auto; max-width: 100%; margin: 0; padding: 12px 16px; border: 1px dashed #a9bcb8; background: #edf3f1; color: #245c55; box-shadow: none; }
body.site-v4 .v4-photo-settings .uploadProPicButton.v4-settings-action:hover { background: #e0ece8; border-color: var(--v4-green); }

/* Profiles and conversations have their own reading rhythm. */
body.site-v4 .v4-profile-story .profileBlock .profilePic { grid-template-columns: 200px minmax(0, 1fr); gap: 32px; }
body.site-v4 .v4-profile-story .profileBlock .profilePic .v4-profile-portrait > img { width: 200px; height: 240px; border-radius: 5px; }
body.site-v4 .v4-profile-portrait { position: relative; }
body.site-v4 .v4-profile-portrait > .gg-shape-circle.v4-icon { position: absolute !important; top: 8px; right: 8px; width: 22px !important; height: 22px !important; padding: 4px !important; margin: 0; background: none !important; color: #fff; cursor: help; }
body.site-v4 .v4-profile-portrait > .gg-shape-circle:is(:hover, :focus-visible) { opacity: 1 !important; }
body.site-v4 .v4-profile-story .profileBlock .profilePic h3 { margin-bottom: 18px; font: 600 32px/1.25 var(--v4-font); }
body.site-v4 .v4-profile-story .profileBlock .profilePic h3 > .v4-single-name { color: #252830; font: inherit; }
body.site-v4 .v4-profile-story .profileBlock .profilePic h3 > span:not(.v4-single-name) { flex-shrink: 0; font-size: 15px; }
body.site-v4 .v4-profile-story .profileBlock .profilePic .info { color: #5b6572; font-size: 14px; }
body.site-v4 .v4-profile-story .profileBlock .v4-profile-actions > div { border-radius: 4px; gap: 8px; padding: 10px 12px; }
body.site-v4 .v4-profile-details h2 { font-size: 20px; padding-left: 14px; border-left: 3px solid var(--v4-accent); }
body.site-v4 .v4-profile-story .profileBlock .profileText { font-size: 16px; line-height: 1.8; }
body.site-v4 .v4-profile-story .profileBlock .aboutMe .detail { grid-template-columns: minmax(80px, 1fr) minmax(0, 1fr); gap: 14px; font-size: 14px; }
body.site-v4 .v4-profile-story .profileBlock .aboutMe .detail span { font-size: 13px; }
body.site-v4 .v4-profile-story .extraH3 { font-size: 20px; border-top: 1px solid var(--v4-line); padding-top: 26px; }
body.site-v4 .v4-related-profiles { min-width: 0; }
body.site-v4[data-v4-page=profile] .loader { overflow-anchor: none; }
body.site-v4 .v4-related-profiles .extraH3 { margin: 0 0 24px; }
body.site-v4 .v4-related-status { display: flex; align-items: center; justify-content: center; gap: 14px; min-height: 64px; padding: 16px 0; color: var(--v4-muted); font-size: 14px; }
body.site-v4 .v4-related-status[role=alert] { color: var(--v4-accent); }
body.site-v4 .v4-chat-heading { background: #252830; color: #fff; border: 0; padding: 14px 16px; }
body.site-v4 .v4-chat-heading .v4-icon-button { background: #383e49; color: #fff; border-color: #515966; }
body.site-v4 .v4-chat-heading strong { font-size: 16px; }
body.site-v4 .container .chatBox .history { background: #f6f7f9; }
body.site-v4 .talkLeft { background: #e1eeeb; color: #274e48; border-radius: 2px 8px 8px; }
body.site-v4 .talkRight { background: #a1274d; border-radius: 8px 2px 8px 8px; }
body.site-v4 .messageItem .inner { padding-block: 16px; }
body.site-v4 .messageItem.selected .inner { background: #fff; box-shadow: inset 3px 0 #a1274d; }
body.site-v4 .messageFilters { gap: 0; border-block: 1px solid var(--v4-line); padding: 8px 0; }
body.site-v4 .messageFilters .filter.selected { border-radius: 3px; background: #252830; color: #fff; }

/* Account sections, purchases, support, access and static pages share the identity. */
body.site-v4 .v4-settings-identity { padding-block: 8px 22px; }
body.site-v4 .v4-settings-identity strong { font: 600 20px/1.3 var(--v4-font); }
body.site-v4 .v4-settings-nav .v4-action { padding: 13px 10px; font-size: 14px; gap: 10px; color: #535d6b; }
body.site-v4 .v4-settings-nav [aria-selected=true] { background: #fff; border-left-color: #a1274d; color: #a1274d; }
body.site-v4 .v4-settings .myProfile h4 { font: 600 23px/1.3 var(--v4-font); }
body.site-v4 .v4-settings .myProfile > label:not(.switch):not(.myMatchLabels) { padding-block: 14px; border-bottom-color: #e0e4e9; }
body.site-v4 .v4-settings .myProfile .leftLabel { font-size: 14px; }
body.site-v4 .v4-settings .myProfile .newEmail, body.site-v4 .v4-settings .myProfile textarea { border-radius: 4px; }
body.site-v4 .v4-notification-row { min-height: 64px; }
body.site-v4 .v4-wallet-balance { background: #252830; color: #fff; padding: 24px; border: 0; }
body.site-v4 .v4-wallet-count { font: 600 36px/1.2 var(--v4-font); }
body.site-v4 .v4-package-option { border-left: 0; border-bottom-color: #dce0e5; padding: 18px 14px; }
body.site-v4 .v4-package-option.selected { background: #fff; box-shadow: inset 3px 0 #a1274d; }
body.site-v4 .v4-checkout { border-radius: 5px; border-color: #cbd1d9; border-top: 4px solid #a1274d; }
body.site-v4 .v4-checkout .pkg-price, body.site-v4 .v4-checkout .inner h2 { font-family: var(--v4-font); font-weight: 600; }
body.site-v4 .v4-checkout .buy { display: flex; justify-content: center; align-items: center; gap: 12px; border-radius: 4px; }
body.site-v4 .v4-checkout .howToPay { background: #edf2f3; }
body.site-v4 .v4-wallet-assurances .glassBadge { font-size: 13px; }
body.site-v4 .v4-support .faqTitle { font-size: 15px; padding-block: 20px; }
body.site-v4 .v4-support .faqContent { font-size: 15px; background: #e7eeef; }
body.site-v4 .v4-support-contact { border-left: 3px solid #a1274d; }
body.site-v4 .v4-document-nav { background: #edf2f3; }
body.site-v4 .v4-document-nav a { display: flex; align-items: flex-start; gap: 10px; font-size: 14px; }
body.site-v4 .v4-document .textPage { font-size: 16px; line-height: 1.85; }
body.site-v4 .v4-document .textPage h2 { font-size: 24px; }
body.site-v4 .v4-document .textPage h3 { font-size: 20px; }
body.site-v4 .v4-access { border-top: 3px solid #a1274d; padding-top: 30px; }
body.site-v4 .v4-access > * { min-width: 0; max-width: 100%; }
body.site-v4 .v4-access-brand { display: flex; align-items: center; gap: 14px; font: 700 32px/1.15 var(--v4-font); color: #252830; white-space: nowrap; overflow-wrap: normal; }
body.site-v4 .v4-access-brand .v4-brand-mark { width: 52px; height: 52px; }
body.site-v4 .v4-access-intro > .v4-icon { display: none !important; }
body.site-v4 .v4-access .loginPage { background: #fff; border-radius: 0; border: 0; border-left: 1px solid var(--v4-line); }
body.site-v4 .v4-gifts-intro { border-color: #dce0e5; }
body.site-v4 .v4-gift-list { grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); max-width: 940px; gap: 20px; }
body.site-v4 .v4-gifts .box { height: auto; min-width: 0; text-align: left; }
body.site-v4 .v4-gifts .box-body, body.site-v4 .v4-gifts .box-body:hover { display: block; width: 100%; height: 216px; padding: 24px; background: #252830; color: #fff; border: 1px solid #252830; border-radius: 6px; text-align: left; font-family: var(--v4-font); overflow: hidden; }
body.site-v4 .v4-gifts .box-body:not([aria-disabled=true]):hover { border-color: #a1274d; background: #323640; }
body.site-v4 .v4-gifts .box-body:focus-visible { outline: 3px solid #a1274d; outline-offset: 4px; }
body.site-v4 .v4-gift-cover { inset: 24px; display: grid; grid-template-columns: minmax(0, 1fr) 44px; grid-template-rows: 1fr auto; gap: 24px 12px; background: none; border: 0; color: #fff; }
body.site-v4 .v4-gift-cover > .v4-icon:first-child { align-self: start; color: #f0b6ca; }
body.site-v4 .v4-gift-cover strong { grid-column: 1; grid-row: 2; font: 600 22px/1.3 var(--v4-font); overflow-wrap: anywhere; }
body.site-v4 .v4-gift-cover > .v4-icon:last-child { grid-column: 2; grid-row: 1 / 3; align-self: stretch; width: 44px !important; height: 100% !important; padding-left: 18px !important; border-left: 1px dashed #727780 !important; color: #f0b6ca; }
body.site-v4 .v4-gifts .box-body .img { position: absolute; inset: 24px; display: grid; grid-template-columns: minmax(0, 1fr) 30px; align-content: center; gap: 18px 12px; width: auto; height: auto; margin: 0; padding: 0; border-radius: 0; background: none; box-shadow: none; color: #245e57; overflow: visible; line-height: 1.5; font: 14px/1.5 var(--v4-font); }
body.site-v4 .v4-gifts .box-body .img strong { font: 600 52px/1 var(--v4-font); }
body.site-v4 .v4-gift-caption { grid-column: 1 / -1; }
body.site-v4 .v4-gift-caption i { display: block; margin-top: 6px; font-style: normal; font-size: 12px; color: #526963; }
body.site-v4 .v4-gifts .box-body.hover, body.site-v4 .v4-gifts .box-body.hover:hover { background: #e6f1ed; border-color: #a6c8bb; cursor: default; }
body.site-v4 .v4-gifts .box-body.hover .img { animation: v4-gift-reveal .3s ease-out; }
body.site-v4 .v4-gifts .box-body[aria-busy=true] { cursor: progress; }
body.site-v4 .v4-gift-error { margin: 12px 0 0; color: #a1274d; font-size: 13px; line-height: 1.5; }
body.site-v4 .v4-package-gifts { display: block; color: #24756c; font: 500 12px/1.5 var(--v4-font); margin-top: 5px; }
body.site-v4 .v4-checkout .pkg-gift { color: #24756c; background: none; font-size: 14px; margin: 12px 0; }
@keyframes v4-gift-reveal { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { body.site-v4 .v4-gifts .box-body.hover .img { animation: none; } }
body.site-v4 .v4-outcome { border-top: 3px solid #24756c; }
body.site-v4 .v4-outcome > .v4-raster-replacement { display: none !important; }
body.site-v4 .filterMapSelections .blockButtonRegions { border-radius: 3px; background: #fff; color: #465461; }
body.site-v4 .footer { border-top-color: var(--v4-line); }
body.site-v4 .homeContent { color: #737c88; }
body.site-v4 .errorLoader, body.site-v4 .errorLoader.green { border-top: 4px solid #a1274d; background: #fff; }
body.site-v4 .errorLoader.green { border-top-color: #24756c; }

@media (max-width: 1100px) {
  body.site-v4 { --v4-rail: 190px; }
  body.site-v4 .main { padding-inline: 24px; }
  body.site-v4 .top .logo { width: 150px; }
  body.site-v4 .v4-settings { grid-template-columns: 205px minmax(0, 1fr); gap: 24px; }
  body.site-v4 .v4-settings-content { padding-left: 24px; }
  body.site-v4 .v4-search-layout .searchingFormElement { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
}
@media (max-width: 760px) {
  body.site-v4 { --v4-rail: 0px; }
  body.site-v4 .main { padding-inline: 18px; }
  body.site-v4 .top { height: 72px; gap: 8px; }
  body.site-v4 .top .logo { color: #252830; position: static; width: auto; max-width: calc(100% - 136px); }
  body.site-v4.v4-menu-open .top .menu { inset: 72px 12px auto; background: #252830; border: 0; padding: 12px; }
  body.site-v4 .v4-page-header h1 { font-size: 25px; }
  body.site-v4 .v4-page-header { padding: 22px 0 18px; }
  body.site-v4 .top .login[data-name=myProfile] > .v4-single-name { display: none; }
  body.site-v4 .v4-mobile-nav { background: #252830; border: 0; padding-top: 10px; }
  body.site-v4 .v4-mobile-nav a { color: #cdd2dc; font-size: 11px; min-height: 47px; }
  body.site-v4 .v4-mobile-nav a.selected { color: #fff; }
  body.site-v4 .v4-mobile-nav a.selected::before { content: ''; position: absolute; top: -10px; width: 24px; height: 3px; background: #ec93af; }
  body.site-v4 .v4-mobile-nav .v4-mobile-count { background: #d25078; color: #fff; }
  body.site-v4 .v4-profile-grid, body.site-v4[data-v4-page=home] .v4-profile-grid, body.site-v4 .v4-search-content.v4-profile-grid { grid-template-columns: repeat(auto-fill, minmax(100px, 1fr)); gap: 20px 12px; }
  body.site-v4 .container .homePro .inner { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto 22px auto auto; }
  body.site-v4 .container .homePro .inner > span { font-size: 12px; padding: 0; }
  body.site-v4 .v4-profile-story .profileBlock .profilePic { grid-template-columns: 96px minmax(0, 1fr); gap: 16px; }
  body.site-v4 .v4-profile-story .profileBlock .profilePic .v4-profile-portrait > img { width: 96px; height: 132px; }
  body.site-v4 .v4-profile-story .profileBlock .profilePic h3 { font-size: 24px; gap: 6px; }
  body.site-v4 .v4-profile-story .profileBlock .profilePic h3 > span:not(.v4-single-name) { font-size: 12px; }
  body.site-v4 .v4-profile-story .profileBlock .profilePic .info { font-size: 12px; }
  body.site-v4 .v4-profile-story .profileBlock .v4-profile-actions { grid-column: 1 / -1; gap: 8px; padding-top: 18px; }
  body.site-v4 .v4-profile-story .profileBlock .v4-profile-actions > div { min-height: 40px; padding: 8px 10px; font-size: 12px; }
  body.site-v4 .v4-profile-actions .v4-icon { width: 18px !important; height: 18px !important; min-width: 18px; }
  body.site-v4 .v4-search-layout .searchingFormElement { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px 12px; }
  body.site-v4 .v4-search-layout .searchBlock .searcher { font-size: 12px; }
  body.site-v4 .v4-search-layout .searchBlock { padding: 18px 0; }
  body.site-v4 .v4-search-actions .searchButton { flex: 1; min-width: 0; }
  body.site-v4 .v4-results-heading h2 { font-size: 14px; }
  body.site-v4 .v4-settings { display: block; }
  body.site-v4 .v4-settings-content { padding-left: 0; }
  body.site-v4 .v4-settings-select { background: #252830; color: #fff; border: 0; font-size: 14px; margin-bottom: 22px; }
  body.site-v4 .v4-wallet-balance { padding: 20px; }
  body.site-v4 .v4-wallet-count { font-size: 30px; }
  body.site-v4 .v4-access .loginPage { border-left: 0; border-top: 1px solid var(--v4-line); }
  body.site-v4 .v4-access { grid-template-columns: minmax(0, 1fr); }
  body.site-v4 .v4-support-contact { border-left: 0; border-top: 3px solid #a1274d; }
  body.site-v4 .pageNumbers { gap: 4px; }
  body.site-v4 .pageNumbers .filter { min-width: 32px; width: auto; height: 36px; padding: 6px; font-size: 12px; }
}
@media (max-width: 380px) {
  body.site-v4 .main { padding-inline: 14px; }
  body.site-v4 .v4-mobile-nav a { font-size: 10px; }
  body.site-v4 .v4-profile-story .profileBlock .profilePic { grid-template-columns: 80px minmax(0, 1fr); gap: 12px; }
  body.site-v4 .v4-profile-story .profileBlock .profilePic .v4-profile-portrait > img { width: 80px; height: 118px; }
}
