/* The narrow visible grip sits on the frame; its pointer/touch target stays generous. */
body.fpb-shell-active .fpb-project-handle {
  position: fixed;
  z-index: 8500;
  top: 46%;
  right: max(0px, calc(var(--fpb-frame-inset) - 12px));
  display: grid !important;
  width: 44px !important;
  min-width: 44px !important;
  height: 88px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--fpb-ink) !important;
  cursor: pointer;
  touch-action: manipulation;
  transition: opacity 180ms ease;
}

body.fpb-shell-active .fpb-project-handle span {
  box-sizing: border-box;
  position: absolute;
  top: 10px;
  right: 12px;
  width: 8px;
  height: 68px;
  border: 1px solid var(--fpb-line);
  border-right: 0;
  border-radius: 12px 0 0 12px;
  overflow: hidden;
  background: color-mix(in srgb, var(--fpb-ink) 20%, var(--fpb-page-bg));
  box-shadow: -3px 0 14px rgb(0 0 0 / 12%);
  transition: width 180ms ease, background 180ms ease;
}

/* A brief sweep every nine seconds draws attention without pulsing the handle. */
body.fpb-shell-active .fpb-project-handle span::after {
  content: "";
  position: absolute;
  inset: 0 -1px auto;
  height: 45%;
  background: linear-gradient(165deg, transparent 10%, rgb(255 255 255 / 75%) 50%, transparent 90%);
  opacity: 0;
  transform: translateY(-120%);
  pointer-events: none;
  animation: fpb-project-handle-shimmer 9s ease-in-out infinite;
}

@keyframes fpb-project-handle-shimmer {
  0%, 82% { transform: translateY(-120%); opacity: 0; }
  85% { opacity: .9; }
  96% { transform: translateY(340%); opacity: .9; }
  100% { transform: translateY(340%); opacity: 0; }
}

body.fpb-projects-open .fpb-project-handle span::after,
body.fpb-drawer-open .fpb-project-handle span::after { animation-play-state: paused; }

body.fpb-shell-active .fpb-project-handle:hover span,
body.fpb-shell-active .fpb-project-handle:focus-visible span {
  width: 12px;
  background: color-mix(in srgb, var(--fpb-ink) 35%, var(--fpb-page-bg));
}

body.fpb-projects-open .fpb-project-handle,
body.fpb-drawer-open .fpb-project-handle { opacity: 0; pointer-events: none; }

.fpb-project-drawer {
  box-sizing: border-box;
  position: fixed;
  z-index: 9150;
  top: calc(var(--fpb-admin-bar-height) + var(--fpb-frame-inset));
  right: var(--fpb-frame-inset);
  bottom: calc(var(--fpb-frame-inset) + var(--fpb-desktop-bottom-safe));
  display: flex;
  flex-direction: column;
  width: min(408px, calc(100vw - 2 * var(--fpb-frame-inset)));
  max-height: calc(var(--fpb-shell-viewport-height) - var(--fpb-admin-bar-height) - 2 * var(--fpb-frame-inset));
  overflow: hidden;
  border: 1px solid var(--fpb-line);
  border-radius: var(--fpb-frame-radius);
  background: linear-gradient(150deg, rgb(255 255 255 / 6%), transparent 55%), var(--fpb-panel-strong);
  color: var(--fpb-ink);
  box-shadow: var(--fpb-shadow);
  -webkit-backdrop-filter: blur(36px) saturate(130%);
  backdrop-filter: blur(36px) saturate(130%);
  font: 400 13px/1.5 var(--fpb-ui-font);
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transform: translateX(calc(100% + 28px));
  transition: transform 360ms cubic-bezier(.22, 1, .36, 1), opacity 200ms ease, visibility 360ms;
}

.fpb-project-drawer.is-open { visibility: visible; opacity: 1; pointer-events: auto; transform: translateX(0); }
.fpb-project-drawer *, .fpb-project-drawer *::before, .fpb-project-drawer *::after { box-sizing: border-box; }
.fpb-project-drawer :is(button, a) { -webkit-tap-highlight-color: transparent; touch-action: manipulation; }
body.fpb-shell-active .fpb-project-drawer [hidden], body.fpb-shell-active .fpb-project-handle[hidden] { display: none !important; }

.fpb-project-header { display: flex; flex: 0 0 auto; align-items: center; justify-content: space-between; gap: 12px; padding: 30px 24px 22px; }
body.fpb-shell-active .fpb-project-eyebrow { margin: 0 0 8px; color: var(--fpb-muted); font: 500 9px/1.3 var(--fpb-ui-font); letter-spacing: .2em; }
body.fpb-shell-active #fpb-project-drawer-title { margin: 0; color: var(--fpb-ink); font: 500 25px/1.2 var(--fpb-ui-font); letter-spacing: -.045em; }
.fpb-project-header-actions { display: flex; flex: 0 0 auto; gap: 6px; }
body.fpb-shell-active :is(.fpb-project-close, .fpb-project-expand) {
  display: grid !important; flex: 0 0 44px; width: 44px !important; height: 44px !important;
  place-items: center; padding: 0 !important; border: 1px solid var(--fpb-line) !important;
  border-radius: 50% !important; background: transparent !important; color: var(--fpb-ink) !important;
  box-shadow: none !important; cursor: pointer;
}
:is(.fpb-project-close, .fpb-project-expand) svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.fpb-project-scroll { min-height: 0; flex: 1 1 auto; overflow: auto; overscroll-behavior: contain; padding: 0 24px 24px; scrollbar-width: thin; scrollbar-color: var(--fpb-line) transparent; }
body.fpb-shell-active .fpb-project-status, body.fpb-shell-active .fpb-project-message { margin: 12px 0; color: var(--fpb-muted); font: 400 12px/1.7 var(--fpb-ui-font); }
.fpb-project-status:empty, .fpb-project-message:empty { display: none; }
.fpb-project-entry { border-top: 1px solid var(--fpb-line); }
body.fpb-shell-active .fpb-project-heading { margin: 0; padding: 0; }
body.fpb-shell-active .fpb-project-toggle {
  display: grid !important; grid-template-columns: minmax(0, 1fr) 20px; column-gap: 12px;
  width: 100% !important; min-height: 78px; padding: 17px 0 !important;
  border: 0 !important; border-radius: 0 !important; background: transparent !important;
  color: var(--fpb-ink) !important; font: inherit; text-align: left !important;
  text-transform: none !important; letter-spacing: normal !important; box-shadow: none !important; cursor: pointer;
}
.fpb-project-title { grid-column: 1; font: 500 14px/1.5 var(--fpb-ui-font); overflow-wrap: anywhere; }
.fpb-project-count { grid-column: 1; margin-top: 3px; font: 400 10px/1.5 var(--fpb-ui-font); color: var(--fpb-muted); }
.fpb-project-chevron { grid-column: 2; grid-row: 1 / 3; align-self: center; font: 300 22px/1 sans-serif; text-align: right; transition: transform 160ms ease; }
.fpb-project-toggle[aria-expanded="true"] .fpb-project-chevron { transform: rotate(45deg); }
.fpb-project-content { padding-bottom: 20px; }
body.fpb-shell-active .fpb-project-products { margin: 0; padding: 0; list-style: none; }
.fpb-project-product { margin: 0; padding: 0; list-style: none; }
body.fpb-shell-active .fpb-project-product-link {
  display: flex; gap: 13px; align-items: center; min-height: 78px; padding: 10px 0;
  color: var(--fpb-ink); text-decoration: none; border: 0; background: transparent;
}
.fpb-project-media { position: relative; display: grid; place-items: center; isolation: isolate; flex: 0 0 56px; width: 56px; height: 60px; }
.fpb-project-media::before { content: ""; position: absolute; z-index: -1; inset: -5px; background: radial-gradient(ellipse at 50% 52%, rgb(208 225 216 / 21%), rgb(154 187 169 / 7%) 44%, transparent 72%); filter: blur(4px); pointer-events: none; }
:root[data-fpb-theme="light"] .fpb-project-media::before { background: radial-gradient(ellipse at 50% 52%, rgb(98 126 111 / 15%), rgb(132 159 145 / 6%) 44%, transparent 72%); }
.fpb-project-media.is-unavailable::after { content: ""; width: 20px; height: 20px; border: 1px solid var(--fpb-line); border-radius: 5px; transform: rotate(-12deg); }
body.fpb-shell-active .fpb-project-thumbnail { display: block; width: 52px; height: 52px; padding: 0; border: 0; border-radius: 0; object-fit: contain; background: transparent !important; box-shadow: none; }
.fpb-project-product-copy { display: flex; min-width: 0; flex-direction: column; gap: 3px; overflow-wrap: anywhere; }
.fpb-project-product-name { font: 500 12px/1.5 var(--fpb-ui-font); }
.fpb-project-variation, .fpb-project-quantity { color: var(--fpb-muted); font: 400 10px/1.5 var(--fpb-ui-font); }
.fpb-project-quantity { margin-top: 2px; }
body.fpb-shell-active .fpb-project-open,
body.fpb-shell-active .fpb-project-more,
body.fpb-shell-active .fpb-project-load-products,
body.fpb-shell-active .fpb-project-retry {
  display: inline-flex; min-height: 44px; align-items: center; justify-content: center;
  width: 100%; margin: 10px 0 0; padding: 8px 14px !important;
  border: 1px solid var(--fpb-line) !important; border-radius: 10px !important;
  background: transparent !important; color: var(--fpb-ink) !important; box-shadow: none !important;
  font: 500 11px/1.5 var(--fpb-ui-font); text-transform: none; text-decoration: none; cursor: pointer;
}
.fpb-project-footer { display: flex; flex: 0 0 auto; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; padding: 16px 24px 20px; border-top: 1px solid var(--fpb-line); }
body.fpb-shell-active .fpb-project-footer a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: var(--fpb-ink); font: 500 10px/1.5 var(--fpb-ui-font); text-decoration: none; }
.fpb-project-create span { font-size: 19px; font-weight: 300; }
.fpb-project-drawer a:hover, .fpb-project-drawer button:hover { filter: brightness(1.15); }
.fpb-project-drawer button[aria-disabled="true"] { opacity: .6; cursor: wait; }
.fpb-project-drawer a:hover .fpb-project-product-name { text-decoration: underline; text-underline-offset: 3px; }
body.fpb-shell-active .fpb-project-handle:focus-visible,
body.fpb-shell-active .fpb-project-drawer :is(a, button):focus-visible { outline: 2px solid var(--fpb-ink); outline-offset: -3px; }

@media (max-width: 760px) {
  body.fpb-project-manage-context .fpb-project-dock-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.fpb-project-manage-context .fpb-project-dock-action { min-height: 42px !important; }
  body.fpb-project-detail-context #yith-wcwl-form.fpb-project-page table.wishlist_table { display: block; overflow-x: auto; }
  .fpb-project-drawer {
    top: calc(var(--fpb-admin-bar-height) + 8px + env(safe-area-inset-top, 0px));
    right: 8px; bottom: calc(8px + env(safe-area-inset-bottom, 0px));
    width: min(408px, calc(100vw - 16px));
    max-height: calc(var(--fpb-shell-viewport-height) - var(--fpb-admin-bar-height) - 16px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
    border-radius: 18px;
  }
  .fpb-project-header { padding: 22px 20px 18px; }
  .fpb-project-scroll { padding: 0 20px 20px; }
  .fpb-project-footer { padding: 12px 20px; }
  body.fpb-shell-active .fpb-project-handle span { right: 0; width: 7px; }
}

@media (prefers-reduced-motion: reduce) {
  .fpb-project-drawer, body.fpb-shell-active .fpb-project-handle, body.fpb-shell-active .fpb-project-handle span, .fpb-project-chevron { transition: none !important; }
  body.fpb-shell-active .fpb-project-handle span::after { animation: none; opacity: 0; }
}

/* Full-page projects inherit the tray's surface, typography and quiet dividers.
 * YITH's own forms and action elements stay in the document, including mobile
 * and modern-list templates. Only the product preview rows are added by FPB. */
body.fpb-project-context #yith-wcwl-form.fpb-project-page {
  box-sizing: border-box;
  width: min(1240px, calc(100% - clamp(32px, 8vw, 144px))) !important;
  margin: 120px auto 40px !important;
  padding: clamp(24px, 4vw, 52px);
  border: 1px solid var(--fpb-line);
  border-radius: 24px;
  background: linear-gradient(150deg, rgb(255 255 255 / 6%), transparent 55%), var(--fpb-panel-strong);
  color: var(--fpb-ink);
  box-shadow: 0 20px 70px rgb(0 0 0 / 8%);
  -webkit-backdrop-filter: blur(36px) saturate(130%);
  backdrop-filter: blur(36px) saturate(130%);
}
.fpb-project-page *, .fpb-project-page *::before, .fpb-project-page *::after { box-sizing: border-box; }
body.fpb-project-context .fpb-project-page-heading { margin: 0 0 40px; }
body.fpb-project-context #yith-wcwl-form.fpb-project-page :is(.fpb-project-page-heading h2, .wishlist-title-container h2),
body.fpb-project-context #yith-wcwl-form.fpb-project-page > h2 {
  margin: 12px 0 18px;
  color: var(--fpb-ink) !important;
  font: 500 clamp(30px, 3.2vw, 46px)/1.12 var(--fpb-ui-font) !important;
  letter-spacing: -.045em !important;
}
body.fpb-project-context .fpb-project-page-intro {
  max-width: 480px;
  margin: 0;
  color: var(--fpb-muted);
  font: 400 14px/1.8 var(--fpb-ui-font);
}
body.fpb-project-context #yith-wcwl-form.fpb-project-page :is(.wishlist_table, table.shop_table) {
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  overflow: visible;
  background: transparent !important;
}
body.fpb-project-context #yith-wcwl-form.fpb-project-page :is(.wishlist_table, table.shop_table) :is(th, td) {
  padding: 24px 12px !important;
  background: transparent !important;
  border-bottom: 1px solid var(--fpb-line) !important;
  text-align: left;
}
body.fpb-project-context #yith-wcwl-form.fpb-project-page :is(.wishlist_table, table.shop_table) th {
  padding-top: 0 !important;
  padding-bottom: 16px !important;
  color: var(--fpb-muted) !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: .12em !important;
}
body.fpb-project-context #yith-wcwl-form.fpb-project-page .wishlist_manage_table td { vertical-align: top !important; }
body.fpb-project-context #yith-wcwl-form.fpb-project-page :is(.wishlist_table, table.shop_table) :is(th, td):first-child { padding-left: 0 !important; }
body.fpb-project-context #yith-wcwl-form.fpb-project-page :is(.wishlist_table, table.shop_table) :is(th, td):last-child { padding-right: 0 !important; }
body.fpb-project-context #yith-wcwl-form.fpb-project-page .wishlist_manage_table td.wishlist-name { width: 42%; }
body.fpb-project-context #yith-wcwl-form.fpb-project-page :is(.wishlist-item-count, .wishlist-dateadded) { font-size: 12px !important; line-height: 1.8; }
body.fpb-project-context #yith-wcwl-form.fpb-project-page .wishlist-title { margin: 0; }
body.fpb-project-context #yith-wcwl-form.fpb-project-page .wishlist-anchor {
  color: var(--fpb-ink) !important;
  font: 500 17px/1.5 var(--fpb-ui-font);
  letter-spacing: -.02em;
  overflow-wrap: anywhere;
}
body.fpb-project-context #yith-wcwl-form.fpb-project-page :is(.wishlist_table, table.shop_table) a:not(.button) { color: var(--fpb-ink) !important; }
body.fpb-project-context #yith-wcwl-form.fpb-project-page :is(.show-title-form, .hide-title-form, .save-title-form, a.wishlist-download) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  min-height: 36px;
  vertical-align: middle;
}
.fpb-project-page :is(.show-title-form, .edit-title-buttons) svg { width: 16px; height: 16px; }
body.fpb-project-context #yith-wcwl-form.fpb-project-page :is(select, input[type="text"], input[type="number"], textarea) {
  max-width: 100%;
  min-height: 42px;
  padding: 10px 12px;
  font-size: 12px;
}
body.fpb-project-context #yith-wcwl-form.fpb-project-page .wishlist-visibility { min-width: 100px; }
body.fpb-project-context #yith-wcwl-form.fpb-project-page .selectBox-dropdown {
  border: 1px solid var(--fpb-line);
  border-radius: 12px;
  background: var(--fpb-project-field);
  color: var(--fpb-ink);
  box-shadow: none;
}
body.fpb-project-context #yith-wcwl-form.fpb-project-page .fpb-project-page-toggle {
  display: flex !important;
  align-items: center;
  gap: 12px;
  min-height: 44px;
  margin: 8px 0 -8px;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--fpb-muted) !important;
  box-shadow: none !important;
  font: 400 11px/1.5 var(--fpb-ui-font) !important;
  text-transform: none !important;
  letter-spacing: normal;
  cursor: pointer;
}
.fpb-project-page-chevron { display: inline-block; font: 300 20px/1 sans-serif; transition: transform 160ms ease; }
.fpb-project-page-toggle[aria-expanded="true"] .fpb-project-page-chevron { transform: rotate(45deg); }
body.fpb-project-context #yith-wcwl-form.fpb-project-page .fpb-project-page-toggle:hover { background: transparent !important; color: var(--fpb-ink) !important; }
body.fpb-project-context #yith-wcwl-form.fpb-project-page .fpb-project-page-toggle:focus-visible { outline: 2px solid var(--fpb-ink); outline-offset: 4px; }
body.fpb-project-context #yith-wcwl-form.fpb-project-page [hidden], body.fpb-project-context .fpb-project-search-hidden { display: none !important; }
body.fpb-project-context #yith-wcwl-form.fpb-project-page .fpb-project-page-preview-row > td { padding: 0 0 24px !important; }
.fpb-project-page-preview { padding: 8px 0 0; }
.fpb-project-page-preview .fpb-project-products { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 40px; }
.fpb-project-page-preview .fpb-project-product { border-bottom: 1px solid var(--fpb-line); }
body.fpb-project-context .fpb-project-page-preview .fpb-project-product-link { min-height: 96px; padding: 16px 0; }
.fpb-project-page-preview .fpb-project-media { flex-basis: 72px; width: 72px; height: 72px; }
.fpb-project-page-preview .fpb-project-thumbnail { width: 64px; height: 64px; }
.fpb-project-page-preview .fpb-project-product-name { font-size: 13px; }
.fpb-project-page-preview :is(.fpb-project-variation, .fpb-project-quantity) { font-size: 11px; }
body.fpb-project-context .fpb-project-page-preview :is(.fpb-project-open, .fpb-project-load-products) { width: auto; margin: 24px 8px 0 0; padding: 10px 20px; }
body.fpb-project-context #yith-wcwl-form.fpb-project-page .wishlist-empty { padding: 32px 0; color: var(--fpb-muted); line-height: 1.8; }
/* Native YITH list layouts use the same treatment without changing their fields. */
body.fpb-project-context #yith-wcwl-form.fpb-project-page ul.wishlist_table { display: block; padding: 0; list-style: none; }
body.fpb-project-context #yith-wcwl-form.fpb-project-page ul.wishlist_table > li { width: 100%; margin: 0; padding: 28px 0; border-bottom: 1px solid var(--fpb-line); }
body.fpb-project-context #yith-wcwl-form.fpb-project-page ul.wishlist_table .item-wrapper { width: 100%; display: flex; gap: 32px; }
body.fpb-project-context #yith-wcwl-form.fpb-project-page ul.wishlist_table .item-details { flex: 1; min-width: 0; }
body.fpb-project-context #yith-wcwl-form.fpb-project-page .item-details-table { width: auto; border: 0; margin: 16px 0 0; background: transparent; }
body.fpb-project-context #yith-wcwl-form.fpb-project-page .wishlist_table .item-details-table td { border: 0 !important; padding: 6px 16px 6px 0 !important; background: transparent !important; font-size: 12px; }
body.fpb-project-context #yith-wcwl-form.fpb-project-page .product-thumbnail img { width: 84px; height: 84px; object-fit: contain; border-radius: 0; }
body.fpb-project-context #yith-wcwl-form.fpb-project-page ul.wishlist_table .product-thumbnail { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; max-width: 32%; }

@media (max-width: 760px) {
  body.fpb-project-context #yith-wcwl-form.fpb-project-page { width: calc(100% - 28px) !important; margin: 94px auto 30px !important; padding: 26px 20px; border-radius: 20px; }
  body.fpb-project-context .fpb-project-page-heading { margin-bottom: 30px; }
  body.fpb-project-context #yith-wcwl-form.fpb-project-page table.wishlist_manage_table { display: block; }
  body.fpb-project-context #yith-wcwl-form.fpb-project-page table.wishlist_manage_table thead { position: absolute; width: 1px; height: 1px; clip-path: inset(50%); overflow: hidden; }
  body.fpb-project-context #yith-wcwl-form.fpb-project-page table.wishlist_manage_table > tbody { display: block; }
  body.fpb-project-context #yith-wcwl-form.fpb-project-page table.wishlist_manage_table > tbody > tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; padding: 24px 0; border-top: 1px solid var(--fpb-line); }
  body.fpb-project-context #yith-wcwl-form.fpb-project-page table.wishlist_manage_table td { display: block; width: auto; padding: 0 !important; border: 0 !important; }
  body.fpb-project-context #yith-wcwl-form.fpb-project-page table.wishlist_manage_table td.wishlist-name { grid-column: 1 / -1; width: auto; }
  body.fpb-project-context #yith-wcwl-form.fpb-project-page .fpb-project-page-entry > td:not(.wishlist-name)::before { content: attr(data-fpb-label); display: block; margin-bottom: 8px; font-size: 10px; color: var(--fpb-muted); }
  body.fpb-project-context #yith-wcwl-form.fpb-project-page table.wishlist_manage_table .fpb-project-page-preview-row { display: block; padding-top: 0; border-top: 0; }
  .fpb-project-page-preview .fpb-project-products { grid-template-columns: minmax(0, 1fr); }
  body.fpb-project-context #yith-wcwl-form.fpb-project-page ul.wishlist_table .item-wrapper { display: block; }
  body.fpb-project-context #yith-wcwl-form.fpb-project-page ul.wishlist_table .product-thumbnail { max-width: 100%; margin-top: 16px; }
}
@media (prefers-reduced-motion: reduce) { .fpb-project-page-chevron { transition: none; } }

/* The installed page has Elementor wrapper geometry and WordPress Additional
 * CSS with page-ID-specific !important rules. A scoped layer wins that legacy
 * paint without altering the public page or escalating selector specificity. */
@layer fpb-project-page {
  body.fpb-shell-active.fpb-project-context {
    background: var(--fpb-page-bg) !important;
    padding-bottom: 0 !important;
  }
  body.fpb-project-context .fpb-project-stage {
    position: relative !important;
    isolation: isolate;
    padding-top: 120px !important;
    padding-bottom: 128px !important;
    background: var(--fpb-page-bg) !important;
    color: var(--fpb-ink) !important;
  }
  body.fpb-project-context .fpb-project-atmosphere {
    z-index: -1;
    opacity: .62;
  }
  :root[data-fpb-theme="light"] body.fpb-project-context .fpb-project-atmosphere { opacity: .76; }
  body.fpb-project-context .fpb-project-stage #yith-wcwl-form.fpb-project-page {
    background: linear-gradient(150deg, rgb(255 255 255 / 5%), transparent 55%), rgb(12 18 15 / 76%) !important;
  }
  :root[data-fpb-theme="light"] body.fpb-project-context .fpb-project-stage #yith-wcwl-form.fpb-project-page {
    background: linear-gradient(150deg, rgb(255 255 255 / 14%), transparent 55%), rgb(225 223 220 / 94%) !important;
  }
  body.fpb-project-context .fpb-project-layout-layer {
    display: block !important;
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
    filter: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
  body.fpb-project-context .fpb-project-layout-layer::before,
  body.fpb-project-context .fpb-project-layout-layer::after { content: none !important; }
  /* Empty legacy shortcode widgets can collapse a negative margin through
   * every wrapper and cancel the stage's header clearance. */
  body.fpb-project-context .fpb-project-stage .elementor-widget-shortcode > .elementor-widget-container { margin: 0 !important; }
  body.fpb-project-context .fpb-project-page :is(.product-name a, .product-name h3, .variation dt, .variation dd, .variation dd p) {
    color: var(--fpb-ink) !important;
  }
  body.fpb-project-context .fpb-project-page :is(.dateadded, .dateadded span, .product-add-to-cart, .item-details-table .value) {
    color: var(--fpb-muted) !important;
  }
  body.fpb-project-context .fpb-project-page .yith_wcwl_wishlist_footer {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    gap: 28px !important;
    margin: 32px 0 8px !important;
    padding: 0 !important;
  }
  body.fpb-project-context .fpb-project-page :is(.yith_wcwl_wishlist_update, .yith-wcwl-share) {
    float: none !important;
    margin: 0 !important;
  }
  body.fpb-project-context .fpb-project-page .yith_wcwl_wishlist_update { order: 1 !important; }
  body.fpb-project-context .fpb-project-page input[name="update_wishlist"] { min-height: 44px !important; margin: 0 !important; padding: 10px 28px !important; }
  body.fpb-project-context .fpb-project-page .yith-wcwl-share {
    order: 2 !important;
    flex: 0 0 100% !important;
    min-width: 0 !important;
    text-align: left !important;
  }
  body.fpb-project-context .fpb-project-page .yith-wcwl-after-share-section {
    width: min(100%, 640px) !important;
    /* Legacy Additional CSS uses a negative percentage margin here. */
    margin: 0 !important;
  }
  body.fpb-project-context .fpb-project-page #yith_wcwl_share_url {
    box-sizing: border-box !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 46px !important;
    margin: 0 0 10px !important;
    padding: 12px 16px !important;
    border: 1px solid var(--fpb-line) !important;
    border-radius: 14px !important;
    background: var(--fpb-project-field) !important;
    color: var(--fpb-ink) !important;
    font: 400 13px/1.5 var(--fpb-ui-font) !important;
    text-overflow: ellipsis !important;
  }
  body.fpb-project-context .fpb-project-page .yith-wcwl-after-share-section small {
    display: block !important;
    margin: 0 !important;
    color: var(--fpb-muted) !important;
    font: 400 12px/1.7 var(--fpb-ui-font) !important;
  }
  body.fpb-project-context .fpb-project-page .copy-trigger { color: var(--fpb-ink) !important; }
  body.fpb-project-context :is(#fp-open-admin, .formplus-pdf-button-admin) { display: none !important; }
  body.fpb-project-context .fpb-project-native-intro { display: none !important; }
  body.fpb-project-context .fpb-project-auxiliary-widget { margin: 0 !important; padding: 0 !important; min-height: 0 !important; }
  body.fpb-project-context .fpb-project-stage #yith-wcwl-form.fpb-project-page { margin-top: 0 !important; }
  body.fpb-project-context .fpb-project-stage #yith-wcwl-form.fpb-project-page { margin-bottom: 0 !important; }
  body.fpb-project-manage-context.fpb-project-create-ready .wishlist-page-links { display: none !important; }
  body.fpb-project-context .fpb-project-page :is(.wishlist_table, .item-details-table) {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
    overflow: visible !important;
  }
  body.fpb-project-context .fpb-project-page .wishlist_table :is(thead, tbody, tr) { background: transparent !important; }
  body.fpb-project-context .fpb-project-page .wishlist_table :is(th, td) {
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid var(--fpb-line) !important;
    border-radius: 0 !important;
    padding: 24px 12px !important;
    color: var(--fpb-muted) !important;
    font: 400 12px/1.8 var(--fpb-ui-font) !important;
    text-align: left !important;
  }
  body.fpb-project-context .fpb-project-page .wishlist_manage_table td { vertical-align: top !important; }
  body.fpb-project-context .fpb-project-page .wishlist_table th {
    padding-top: 0 !important;
    padding-bottom: 16px !important;
    font: 500 10px/1.6 var(--fpb-ui-font) !important;
    letter-spacing: .12em !important;
  }
  body.fpb-project-context .fpb-project-page .wishlist_table :is(th, td):first-child { padding-left: 0 !important; }
  body.fpb-project-context .fpb-project-page .wishlist_table :is(th, td):last-child { padding-right: 0 !important; }
  body.fpb-project-context .fpb-project-page .wishlist-title { margin: 0 !important; }
  body.fpb-project-context .fpb-project-page .wishlist-anchor { color: var(--fpb-ink) !important; font: 500 17px/1.5 var(--fpb-ui-font) !important; }
  body.fpb-project-context .fpb-project-page .show-title-form { display: inline-flex !important; }
  body.fpb-project-context .fpb-project-page :is(select.wishlist-visibility, .selectBox-dropdown) {
    width: 120px !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 42px !important;
    border: 1px solid var(--fpb-line) !important;
    border-radius: 12px !important;
    background: var(--fpb-project-field) !important;
    color: var(--fpb-ink) !important;
    font: 400 12px/1.5 var(--fpb-ui-font) !important;
  }
  body.fpb-project-context .fpb-project-page .selectBox-dropdown .selectBox-label {
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding: 10px 30px 10px 12px !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--fpb-ink) !important;
    font: inherit !important;
  }
  body.fpb-project-context .fpb-project-page .selectBox-arrow { border-color: var(--fpb-line) !important; }
  body.fpb-project-context .fpb-project-page .fpb-project-page-preview-row > td { padding: 0 0 24px !important; }
  body.fpb-project-context .fpb-project-page ul.wishlist_table > li {
    width: 100% !important;
    margin: 0 !important;
    padding: 28px 0 !important;
    border: 0 !important;
    border-bottom: 1px solid var(--fpb-line) !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--fpb-ink) !important;
  }
  body.fpb-project-context .fpb-project-page .item-details-table { display: table !important; width: auto !important; }
  body.fpb-project-context .fpb-project-page .item-details-table tr { display: table-row !important; border: 0 !important; }
  body.fpb-project-context .fpb-project-page .item-details-table td { padding: 6px 16px 6px 0 !important; border: 0 !important; }
  /* Legacy mobile li selectors also match the new preview's nested products. */
  body.fpb-project-context .fpb-project-page .fpb-project-product {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-bottom: 1px solid var(--fpb-line) !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  @media (max-width: 760px) {
    body.fpb-project-context .fpb-project-stage { padding-top: 94px !important; padding-bottom: 150px !important; }
    body.fpb-project-context .fpb-project-page table.wishlist_manage_table > tbody > tr { border-top: 1px solid var(--fpb-line) !important; }
    body.fpb-project-context .fpb-project-page table.wishlist_manage_table td { border: 0 !important; padding: 0 !important; }
    body.fpb-project-context .fpb-project-page table.wishlist_manage_table .fpb-project-page-preview-row { border-top: 0 !important; }
    body.fpb-project-detail-context .fpb-project-page table.wishlist_table { overflow-x: auto !important; }
  }
}
.fpb-project-page-heading:has(.fpb-project-page-actions) { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 32px; }
.fpb-project-page-heading > :not(.fpb-project-page-actions) { grid-column: 1; }
.fpb-project-page-actions { grid-column: 2; grid-row: 1 / 4; align-self: center; }
body.fpb-shell-active .fpb-project-page-actions .fp-rb-launch-btn { min-height: 44px; padding: 10px 18px !important; font: 500 11px/1.5 var(--fpb-ui-font) !important; }
@media (max-width: 760px) {
  .fpb-project-page-heading:has(.fpb-project-page-actions) { display: block; }
  .fpb-project-page-actions { margin-top: 24px; }
}

/* The public project page uses the same refined shell as the private tray. */
@layer fpb-project-page {
  body.fpb-project-context .fpb-project-stage #yith-wcwl-form.fpb-project-page { background: linear-gradient(150deg, rgb(255 255 255 / 5%), transparent 55%), rgb(22 22 22 / 92%) !important; }
  :root[data-fpb-theme="light"] body.fpb-project-context .fpb-project-stage #yith-wcwl-form.fpb-project-page { background: rgb(225 223 220 / 94%) !important; }
  body.fpb-project-context .fpb-project-page .wishlist-empty { margin: 0 !important; padding: 24px !important; border: 1px solid var(--fpb-line) !important; border-radius: 18px !important; background: var(--fpb-panel-soft) !important; box-shadow: none !important; color: var(--fpb-muted) !important; font: 400 15px/1.75 var(--fpb-ui-font) !important; }
  body.fpb-project-context .fpb-project-page .wishlist-empty a { display: inline-block; min-height: 44px; color: var(--fpb-ink) !important; text-underline-offset: 4px; }
  @media (max-width: 760px) {
    body.fpb-project-context .fpb-project-stage { padding: 92px 0 104px !important; }
    body.fpb-project-context .fpb-project-stage #yith-wcwl-form.fpb-project-page { width: calc(100% - 28px) !important; padding: 26px 20px !important; min-width: 0 !important; }
    body.fpb-project-context .fpb-project-page-heading h2 { font-size: 36px !important; overflow-wrap: anywhere; }
    body.fpb-project-context .fpb-project-page-actions .fp-rb-launch-btn { width: 100% !important; min-height: 44px !important; margin: 0 !important; font: 500 13px/1.4 var(--fpb-ui-font) !important; }
    body.fpb-project-context .fpb-project-page .wishlist-empty { padding: 18px !important; }
    body.fpb-project-manage-context .fpb-smart-dock.is-project { box-sizing: border-box; width: 100%; grid-template-columns: minmax(0, 1fr); grid-template-areas: 'actions'; min-height: 58px !important; padding: 6px; }
    body.fpb-project-manage-context .fpb-smart-dock .fpb-project-search { display: none !important; }
    body.fpb-project-manage-context .fpb-project-dock-actions { display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 6px; }
    body.fpb-project-manage-context .fpb-project-dock-action { min-height: 44px !important; font-size: 12px !important; padding: 0 12px !important; }
  }
}
