.pcc {
  --pcc-ink: #241725;
  --pcc-muted: #705f70;
  --pcc-paper: #fffaf5;
  --pcc-panel: #ffffff;
  --pcc-berry: #6c1d5f;
  --pcc-berry-dark: #4a1041;
  --pcc-pink: #f6bfd6;
  --pcc-line: #e8dfe7;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  color: var(--pcc-ink);
  background: var(--pcc-paper);
  font: 400 16px/1.55 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  border-radius: 28px;
}
.pcc *, .pcc *::before, .pcc *::after { box-sizing: border-box; }
.pcc [hidden] { display: none !important; }
.pcc button, .pcc input { font: inherit; }
.pcc button, .pcc label, .pcc input { -webkit-tap-highlight-color: transparent; }
.pcc__ambient {
  position: absolute; inset: -20% -10% auto auto; width: 520px; height: 520px; border-radius: 50%;
  background: radial-gradient(circle, rgba(246,191,214,.52), rgba(246,191,214,0) 68%); z-index: -1;
}
.pcc__shell { max-width: 1180px; min-height: 720px; margin: 0 auto; padding: 24px; }
.pcc__header { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 42px; }
.pcc__brand { display: inline-flex; align-items: center; gap: 10px; color: var(--pcc-ink); font-weight: 750; text-decoration: none; }
.pcc__brand-mark { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 12px 12px 18px 18px; color: white; background: var(--pcc-berry); }
.pcc__privacy-pill { padding: 7px 12px; border: 1px solid var(--pcc-line); border-radius: 999px; color: var(--pcc-muted); font-size: .8rem; font-weight: 700; letter-spacing: .02em; background: rgba(255,255,255,.72); }
.pcc__main { max-width: 1040px; margin: 0 auto; }
.pcc__panel:focus { outline: none; }
.pcc__intro { max-width: 750px; padding: 70px 0 90px; }
.pcc__eyebrow { margin: 0 0 12px; color: var(--pcc-berry); font-size: .82rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.pcc h1, .pcc h2 { margin-top: 0; color: var(--pcc-ink); font-weight: 820; letter-spacing: -.035em; line-height: 1.02; }
.pcc h1 { max-width: 780px; margin-bottom: 24px; font-size: clamp(2.7rem, 8vw, 5.6rem); }
.pcc h2 { font-size: clamp(1.65rem, 4vw, 2.35rem); }
.pcc__lede { max-width: 680px; margin: 0 0 28px; color: var(--pcc-muted); font-size: clamp(1.05rem, 2vw, 1.3rem); }
.pcc__promise { display: flex; gap: 13px; align-items: flex-start; max-width: 650px; margin: 0 0 30px; padding: 17px 19px; border: 1px solid #e9c7d8; border-radius: 18px; background: rgba(255,255,255,.7); }
.pcc__promise span { color: var(--pcc-berry); font-size: 1.4rem; }
.pcc__promise p { margin: 0; }
.pcc__fineprint { margin: 18px 0 0; color: var(--pcc-muted); font-size: .82rem; }
.pcc__button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 14px; padding: 12px 21px; border: 2px solid transparent; border-radius: 14px; cursor: pointer; font-weight: 780; text-decoration: none; transition: transform .16s ease, box-shadow .16s ease, background .16s ease; }
.pcc__button:hover { transform: translateY(-2px); }
.pcc__button--primary { color: white; background: var(--pcc-berry); box-shadow: 0 10px 24px rgba(91,24,80,.2); }
.pcc__button--primary:hover { background: var(--pcc-berry-dark); }
.pcc__button--secondary { color: var(--pcc-berry); border-color: #d6b7ca; background: white; }
.pcc__text-button { padding: 5px 2px; border: 0; color: var(--pcc-berry); background: transparent; cursor: pointer; font-weight: 750; text-decoration: underline; text-underline-offset: 3px; }
.pcc button:focus-visible, .pcc input:focus-visible, .pcc a:focus-visible { outline: 3px solid #1878d0; outline-offset: 3px; }
.pcc__progress-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 10px 0 9px; }
.pcc__progress-row p { margin: 0; color: var(--pcc-muted); font-weight: 700; }
.pcc__progress { width: 100%; height: 8px; overflow: hidden; border-radius: 999px; background: #eadfe8; }
.pcc__progress span { display: block; width: 0; height: 100%; border-radius: inherit; background: var(--pcc-berry); transition: width .25s ease; }
.pcc__question { min-width: 0; margin: 54px 0; padding: 0; border: 0; }
.pcc__question legend { max-width: 820px; margin: 0 0 30px; font-size: clamp(1.8rem, 5vw, 3.4rem); font-weight: 820; letter-spacing: -.025em; line-height: 1.12; }
.pcc__answer { position: relative; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 18px; max-width: 840px; margin: 12px 0; padding: 19px 22px; border: 2px solid var(--pcc-line); border-radius: 17px; background: rgba(255,255,255,.88); cursor: pointer; font-size: 1.06rem; font-weight: 650; transition: border-color .15s ease, background .15s ease, transform .15s ease; }
.pcc__answer:hover { border-color: #b987ab; transform: translateX(3px); }
.pcc__answer:has(input:focus-visible) { outline: 3px solid #1878d0; outline-offset: 3px; }
.pcc__answer input { position: absolute; opacity: 0; pointer-events: none; }
.pcc__answer b { color: var(--pcc-berry); font-size: 1.4rem; }
.pcc__quiz-nav { margin-top: 28px; }
.pcc__result-intro { max-width: 880px; margin: 20px 0 42px; }
.pcc__result-intro h1 { margin-bottom: 12px; font-size: clamp(2.6rem, 7vw, 5rem); }
.pcc__tagline { margin: 0 0 10px; color: var(--pcc-berry); font-size: 1.3rem; font-weight: 750; }
.pcc__description { max-width: 720px; margin: 0; color: var(--pcc-muted); font-size: 1.08rem; }
.pcc__studio { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, .9fr); gap: 42px; align-items: start; padding-bottom: 70px; }
.pcc__editor { padding: 28px; border: 1px solid var(--pcc-line); border-radius: 24px; background: rgba(255,255,255,.9); box-shadow: 0 20px 60px rgba(53,28,49,.07); }
.pcc__editor > label { display: block; margin: 0 0 18px; font-weight: 720; }
.pcc__editor input[type="text"] { width: 100%; min-height: 47px; margin-top: 7px; padding: 10px 12px; border: 1px solid #cdbfca; border-radius: 11px; color: var(--pcc-ink); background: white; }
.pcc__editor fieldset { margin: 24px 0; padding: 0; border: 0; }
.pcc__editor legend { margin-bottom: 10px; font-weight: 780; }
.pcc__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.pcc__chip { position: relative; padding: 8px 12px; border: 1px solid #cfbfcc; border-radius: 999px; cursor: pointer; background: white; }
.pcc__chip:has(input:checked) { color: white; border-color: var(--pcc-berry); background: var(--pcc-berry); }
.pcc__chip:has(input:focus-visible) { outline: 3px solid #1878d0; outline-offset: 2px; }
.pcc__chip input { position: absolute; opacity: 0; }
.pcc__swatches { display: flex; flex-wrap: wrap; gap: 14px; }
.pcc__swatch { position: relative; display: grid; justify-items: center; gap: 5px; color: var(--pcc-muted); cursor: pointer; font-size: .78rem; }
.pcc__swatch input { position: absolute; opacity: 0; }
.pcc__swatch span { display: block; width: 43px; height: 43px; border: 3px solid white; border-radius: 50%; background: var(--swatch); box-shadow: 0 0 0 1px #bcaeb9; }
.pcc__swatch:has(input:checked) span { box-shadow: 0 0 0 3px var(--pcc-ink); }
.pcc__swatch:has(input:focus-visible) span { outline: 3px solid #1878d0; outline-offset: 3px; }
.pcc__upload { display: inline-flex; min-height: 45px; align-items: center; padding: 10px 14px; border: 1px dashed #b98ba9; border-radius: 12px; color: var(--pcc-berry); background: #fff8fc; cursor: pointer; font-weight: 750; }
.pcc__upload input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.pcc__upload:has(input:focus-visible) { outline: 3px solid #1878d0; outline-offset: 3px; }
.pcc__photo-control > p { margin: 8px 0 0; color: var(--pcc-muted); font-size: .8rem; }
.pcc__position-controls { display: grid; gap: 13px; margin-top: 18px; padding: 16px; border-radius: 14px; background: #f8f2f6; }
.pcc__position-controls label { display: grid; gap: 3px; color: var(--pcc-muted); font-size: .82rem; font-weight: 700; }
.pcc__preview-wrap { position: sticky; top: 24px; min-width: 0; }
.pcc__preview-label { margin: 0 0 8px; color: var(--pcc-muted); font-size: .8rem; font-weight: 750; text-transform: uppercase; letter-spacing: .08em; }
.pcc canvas { display: block; width: 100%; height: auto; border-radius: 22px; background: #5a174e; box-shadow: 0 22px 54px rgba(47,23,43,.2); }
.pcc__consent-note { margin: 14px 0; color: var(--pcc-muted); font-size: .82rem; }
.pcc__actions { display: grid; grid-template-columns: 1fr auto; gap: 10px; }
.pcc__subactions { display: flex; justify-content: center; gap: 22px; margin-top: 14px; }
.pcc__noscript { margin: 30px 0; padding: 16px; border-left: 4px solid var(--pcc-berry); background: white; }
.sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }

@media (max-width: 760px) {
  .pcc { border-radius: 0; }
  .pcc__shell { min-height: 100vh; padding: 18px; }
  .pcc__header { margin-bottom: 22px; }
  .pcc__privacy-pill { font-size: .7rem; }
  .pcc__intro { padding: 45px 0 65px; }
  .pcc__studio { grid-template-columns: 1fr; gap: 28px; }
  .pcc__editor { padding: 20px; }
  .pcc__preview-wrap { position: static; }
  .pcc__actions { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  .pcc *, .pcc *::before, .pcc *::after { scroll-behavior: auto !important; transition-duration: .001ms !important; animation-duration: .001ms !important; animation-iteration-count: 1 !important; }
}

/* Figma TB-Ecom Pupsona Card creator (nodes 10897:2637, 10916:33648, 10916:33649). */
@font-face { font-family: "Fugaz One"; src: url("../fonts/FugazOne-Regular.ttf") format("truetype"); font-style: normal; font-weight: 400; font-display: swap; }
@font-face { font-family: "Oxanium"; src: url("../fonts/Oxanium-Variable.ttf") format("truetype"); font-style: normal; font-weight: 200 800; font-display: swap; }
@font-face { font-family: "Open Sans"; src: url("../fonts/OpenSans-Variable.ttf") format("truetype"); font-style: normal; font-weight: 300 800; font-display: swap; }
@font-face { font-family: "Open Sans"; src: url("../fonts/OpenSans-Italic-Variable.ttf") format("truetype"); font-style: italic; font-weight: 300 800; font-display: swap; }

.pcc__creator {
  width: calc(100% + 48px);
  margin: -24px;
  padding: 22px 24px 56px;
  color: #ccccdc;
  background: #181b1f;
  font-family: "Open Sans", sans-serif;
}
.pcc__creator-inner { width: min(100%, 407px); margin: 0 auto; }
.pcc__display-heading {
  margin: 0 0 2px !important;
  color: #fff !important;
  font: 400 24px/51px "Fugaz One", sans-serif !important;
  letter-spacing: .03em !important;
}
.pcc__display-heading--form { margin-top: 20px !important; }
.pcc__example-note { min-height: 36px; margin: 0 0 5px; font-size: 16px; line-height: 24px; letter-spacing: .01em; }

.pcc-pass {
  --pass-outer: #000098;
  --pass-ink: #000;
  --pass-container: rgba(255,255,255,.8);
  --tag-background: #2187c5;
  --tag-color: #fff;
  position: relative;
  width: 371px;
  max-width: 100%;
  margin: 0 auto;
  overflow: hidden;
  color: var(--pass-ink);
  border: 7px solid #2187c5;
  border-radius: 11px;
  background: var(--pass-outer);
  font-family: "Open Sans", sans-serif;
  transition: height .18s ease;
}
.pcc-pass__pattern { position: absolute; inset: 38px 0 32px; z-index: 0; pointer-events: none; background-position: center; background-size: cover; }
.pcc-pass[data-pattern="paws"] .pcc-pass__pattern { background-image: url("../patterns/paw-prints.png"); }
.pcc-pass[data-pattern="pride"] .pcc-pass__pattern { background-image: url("../patterns/pup-pride.png"); }
.pcc-pass[data-pattern="trans-pride"] .pcc-pass__pattern { background-image: url("../patterns/trans-pride.png"); }
.pcc-pass[data-pattern="progressive-pride"] .pcc-pass__pattern { background-image: url("../patterns/progressive-pride.png"); }
.pcc-pass[data-pattern="bones"] .pcc-pass__pattern { background-image: url("../patterns/pup-bones.png"); }
.pcc-pass[data-pattern="none"] .pcc-pass__pattern { display: none; }
.pcc-pass__header {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 25px minmax(0, 1fr) 25px;
  gap: 8px;
  height: 38px;
  place-items: center;
  color: #fff;
  background: #177ec5;
  font: 700 16px/1 "Oxanium", sans-serif;
  letter-spacing: .13em;
  text-align: center;
}
.pcc-pass__header-icon { display: block; width: 25px; height: 25px; object-fit: contain; }
.pcc-pass__header-icon--right { transform: scaleX(-1); }
.pcc-pass__footer { position: relative; z-index: 1; display: grid; min-height: 32px; padding: 5px 8px; place-items: center; color: #fff; background: var(--pass-outer); font: 700 11px/1.2 Oxanium, sans-serif; letter-spacing: .1em; text-align: center; }
.pcc-pass__body { position: relative; z-index: 1; display: grid; gap: 15px; padding: 11px 10px 10px; }
.pcc-pass__identity, .pcc-pass__details { width: 100%; padding: 10px 13px; border-radius: 8px; background: var(--pass-container); backdrop-filter: blur(1px); }
.pcc-pass__identity { min-height: 58px; }
.pcc-pass__name-line { display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: 10px; }
.pcc-pass__name-line strong { min-width: 0; font: 400 24px/1.25 "Fugaz One", sans-serif; letter-spacing: .03em; hyphens: none; overflow-wrap: break-word; word-break: normal; }
.pcc-pass__name-line span { flex: 0 0 auto; font-size: 40px; line-height: 1; }
.pcc-pass__identity p { margin: 1px 0 0; hyphens: none; overflow-wrap: break-word; word-break: normal; font-size: 14px; line-height: 20px; letter-spacing: .03em; }
.pcc-pass__photo { position: relative; width: 100%; height: 260px; overflow: hidden; border-radius: 8px; background: #fff; }
.pcc-pass__photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.pcc-pass__photo img.is-placeholder { object-fit: cover; filter: none; opacity: 1; }
.pcc-pass__photo.is-positionable { cursor: grab; touch-action: none; user-select: none; }
.pcc-pass__photo.is-positionable.is-dragging { cursor: grabbing; }
.pcc-pass__position-hint { position: absolute; inset: 0; z-index: 2; display: grid; padding: 18px; place-content: center; justify-items: center; color: #111217; background: rgba(255,255,255,.64); opacity: 0; pointer-events: none; text-align: center; }
.pcc-pass__position-hint strong { max-width: 230px; font: 800 16px/1.25 Roboto, Arial, sans-serif; letter-spacing: .01em; text-transform: uppercase; hyphens: none; overflow-wrap: normal; word-break: normal; }
.pcc-pass__position-hint img { width: 48px; height: 48px; margin-top: 7px; object-fit: contain; filter: none; opacity: .9; }
.pcc-pass__photo[data-has-upload="true"][data-positioned="false"] .pcc-pass__position-hint { animation: pcc-photo-position-hint 7s ease-in-out infinite; }
@keyframes pcc-photo-position-hint {
  0%, 69% { opacity: 0; }
  73%, 96% { opacity: .86; }
  100% { opacity: 0; }
}
.pcc-pass__details { display: grid; min-height: 0; gap: 6px; }
.pcc-pass__row { display: grid; grid-template-columns: 74px minmax(0, 1fr); gap: 7px; align-items: start; min-height: 22px; }
.pcc-pass__row > strong { padding-top: 4px; font-size: 12px; font-weight: 800; line-height: 16px; text-transform: uppercase; }
.pcc-pass__tags { display: flex; min-width: 0; flex-wrap: wrap; gap: 5px 7px; }
.pcc-pass__tags > span { display:inline-flex; min-height:22px; align-items:center; max-width:100%; padding:2px 10px; color:var(--tag-color); border-radius:999px; background:var(--tag-background); font-size:12px; line-height:18px; hyphens:none; overflow-wrap:break-word; text-align:center; white-space:normal; word-break:normal; }
.pcc-pass__extra { margin: 1px 0 0; hyphens:none; overflow-wrap:break-word; word-break:normal; font-size: 12px; font-style: italic; font-weight: 600; line-height: 16px; letter-spacing: .03em; }

.pcc__creator .pcc__editor { padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.pcc__tabs { display: flex; gap: 14px; align-items: flex-end; margin: 0 0 18px; overflow-x: auto; scrollbar-width: none; }
.pcc__tabs::-webkit-scrollbar { display: none; }
.pcc__tabs button { position: relative; flex: 0 0 auto; padding: 10px 16px 12px; border: 0; color: rgba(204,204,220,.65); background: transparent; cursor: pointer; font-size: 14px; line-height: 20px; }
.pcc__tabs button[aria-selected="true"] { color: #ccccdc; }
.pcc__tabs button[aria-selected="true"]::after { position: absolute; right: 0; bottom: 0; left: 0; height: 4px; border-radius: 2px; background: #ff7448; content: ""; }
.pcc__tabs button:focus-visible { border-radius: 2px; outline: 3px solid #3d71d9; outline-offset: -3px; }
.pcc__answer-hint { margin: -8px 0 18px; color: rgba(204,204,220,.72); font: 400 12px/18px Roboto, Arial, sans-serif; hyphens: none; overflow-wrap: normal; word-break: normal; }
.pcc__tab-panel { display: grid; gap: 15px; }
.pcc__field-row { position: relative; min-width: 0; }
.pcc__field-heading { display: flex; min-height: 22px; align-items: center; gap: 8px; margin: 0 0 6px; color: #ccccdc; font-size: 14px; line-height: 20px; }
.pcc__field-heading > b { font-weight: 400; }
.pcc__kit-checkbox { position: relative; display: inline-grid; width: 18px; height: 18px; flex: 0 0 18px; place-items: center; margin: 0; cursor: pointer; }
.pcc__kit-checkbox input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.pcc__kit-checkbox span { position: relative; display: inline-grid; width: 18px; height: 18px; place-items: center; border: 1px solid rgba(204,204,220,.2); border-radius: 2px; background: #111217; }
.pcc__kit-checkbox input:checked + span { border-color: #3d71d9; background: #3d71d9; }
.pcc__kit-checkbox input:checked + span::after { width: 7px; height: 4px; margin-top: -1px; border-bottom: 1.7px solid #fff; border-left: 1.7px solid #fff; content: ""; transform: rotate(-45deg); }
.pcc__kit-checkbox:hover span { border-color: rgba(204,204,220,.3); }
.pcc__kit-checkbox:hover input:checked + span { background: #5a86de; }
.pcc__kit-checkbox input:focus-visible + span { box-shadow: 0 0 0 1px #181b1f, 0 0 0 3px #3d71d9; }
.pcc__creator .pcc__editor input[type="text"], .pcc__creator .pcc__editor select {
  display: block;
  width: 100%;
  max-width: none !important;
  height: 40px;
  min-height: 40px;
  margin: 0;
  padding: 8px 10px;
  border: 1px solid rgba(204,204,220,.2);
  border-radius: 2px;
  color: #ccccdc;
  background: #111217;
  font: 400 14px/22px Inter, "Open Sans", sans-serif;
  letter-spacing: .021px;
}
.pcc__creator .pcc__editor input::placeholder { color: rgba(204,204,220,.4); opacity: 1; }
.pcc__creator .pcc__editor input[type="text"]:hover, .pcc__creator .pcc__editor select:hover { border-color: rgba(204,204,220,.3); }
.pcc__creator .pcc__editor input[type="text"]:focus, .pcc__creator .pcc__editor select:focus { border-color: rgba(204,204,220,.3); outline: 0; box-shadow: 0 0 0 1px #181b1f, 0 0 0 3px #3d71d9; }
.pcc__creator .pcc__editor select { appearance: auto; }
.pcc__design-field { display: grid; gap: 6px; color: #ccccdc; font-size: 14px; line-height: 20px; }
.pcc__creator .pcc__editor .pcc__design-field select { width: 100%; margin-left: 0; }
.pcc__directory-setting { display: grid; gap: 6px; margin-top: 18px; padding: 14px; border: 1px solid rgba(204,204,220,.2); border-radius: 3px; background: #111217; }
.pcc__directory-setting .pcc__field-heading { margin: 0; }
.pcc__directory-setting p { margin: 0; color: rgba(204,204,220,.72); font: 400 13px/1.5 Roboto, Arial, sans-serif; hyphens: none; overflow-wrap: normal; word-break: normal; }
.pcc__directory-setting .pcc__directory-status { margin-top: 4px; color: #9ebefb; font-weight: 700; }
.pcc__directory-status[data-status="approved"] { color: #8fd5a6; }
.pcc__directory-status[data-status="rejected"], .pcc__directory-status[data-status="suspended"] { color: #ff9b90; }
.pcc__creator button.pcc__remove-directory { justify-self: start; margin: 2px 0 0; padding: 0; color: #ff4d4f; border: 0; background: transparent; cursor: pointer; font: 700 12px/18px Roboto, Arial, sans-serif; text-decoration: underline; text-underline-offset: 3px; }
.pcc__creator button.pcc__remove-directory:hover, .pcc__creator button.pcc__remove-directory:focus { color: #ff4d4f; background: transparent; box-shadow: none; transform: none; }
.pcc__remove-directory[hidden] { display: none !important; }
.pcc__dropzone { display: grid; width: 100%; min-height: 186px; margin-left: 0; place-content: center; justify-items: center; border: 1px dashed rgba(204,204,220,.35); color: #ccccdc; background: #111217; cursor: pointer; text-align: center; }
.pcc__dropzone:hover, .pcc__dropzone.is-dragging { border-color: #5a86de; background: #151923; }
.pcc__dropzone:has(input:focus-visible) { box-shadow: 0 0 0 1px #181b1f, 0 0 0 3px #3d71d9; }
.pcc__dropzone input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.pcc__upload-icon { display: block; width: 27px; height: 27px; margin-bottom: 10px; }
.pcc__dropzone strong { font-size: 22px; font-weight: 400; line-height: 30px; }
.pcc__dropzone small { margin-top: 5px; color: rgba(204,204,220,.6); font-size: 12px; }
.pcc__file-summary { display: grid; width: 100%; min-height: 64px; grid-template-columns: 48px minmax(0,1fr) 44px; gap: 12px; align-items: center; margin-left: 0; padding: 7px 10px; border: 1px solid rgba(204,204,220,.2); border-radius: 2px; background: #111217; }
.pcc__file-summary > img { width: 44px; height: 44px; object-fit: cover; border-radius: 2px; }
.pcc__file-summary > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pcc__file-summary button { display: grid; width: 44px; height: 44px; flex: 0 0 44px; place-items: center; padding: 0; color: #ff4d4f; border: 2px solid #ff4d4f; border-radius: 50%; background: transparent; cursor: pointer; font: 700 32px/1 Arial, sans-serif; }
.pcc__file-summary button:hover { color: #fff; border-color: #ff4d4f; background: #d9363e; }
.pcc__file-summary button span { display: block; width: 100%; line-height: 36px; text-align: center; }
.pcc__creator button.pcc__position-photo { display: inline-flex; margin: 10px 0 0; padding: 0; color: #9ebefb; border: 0; background: transparent; cursor: pointer; font: 700 12px/18px Roboto, Arial, sans-serif; text-decoration: underline; text-underline-offset: 3px; animation: pcc-position-link-pulse 6s ease-in-out infinite; }
.pcc__creator button.pcc__position-photo:hover,
.pcc__creator button.pcc__position-photo:focus { color: #9ebefb; background: transparent; box-shadow: none; transform: none; }
.pcc__position-photo[hidden] { display: none !important; }
@keyframes pcc-position-link-pulse {
  0%, 58%, 100% { color: #9ebefb; text-shadow: none; }
  70%, 82% { color: #fff; text-shadow: 0 0 8px rgba(255,255,255,.55); }
}
.pcc__creator .pcc__consent-note { color: rgba(204,204,220,.72); }
.pcc__creator .pcc__actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 16px; }
.pcc__creator .pcc__actions .pcc__button { min-width: 0; margin: 0; font: 700 14px/20px Roboto, Arial, sans-serif; text-transform: none; }
.pcc .pcc__button { border-radius: 4px; }
.pcc__creator .pcc__button--primary { background: #2187c5; box-shadow: none; }
.pcc__creator .pcc__button--primary:hover { background: #1770ac; }
.pcc__creator .pcc__button--secondary { color: #ccccdc; border-color: rgba(204,204,220,.3); background: #111217; }
.pcc__creator .pcc__text-button { color: #9ebefb; }
.pcc__button--save { width: 100%; color: #fff; border-color: #2187c5; background: #2187c5; }
.pcc__button--save:hover { background: #1770ac; }
.pcc__button--save:disabled { cursor: wait; opacity: .7; transform: none; }
.pcc__save-status { min-height: 20px; margin: 8px 0 0; color: #8fd5a6; font-size: 12px; line-height: 20px; text-align: center; }
.pcc__save-status.is-error { color: #ff9b90; }
.pcc__load-error { margin: 24px 0; padding: 18px 20px; border: 1px solid #ff9b90; color: #ffffff; background: #2d1717; font: 700 16px/1.5 Roboto, sans-serif; }
.pcc__auth-prompt { position: fixed; inset: 0; z-index: 999999; display: grid; padding: 20px; place-items: center; background: rgba(0,0,0,.72); }
.pcc__auth-prompt[hidden] { display: none !important; }
.pcc__auth-dialog { position: relative; width: min(100%, 620px); padding: 36px; color: #ccccdc; border: 1px solid rgba(204,204,220,.25); border-radius: 12px; background: #181b1f; box-shadow: 0 24px 80px rgba(0,0,0,.45); font-family: Roboto, Arial, sans-serif; word-break: normal; overflow-wrap: break-word; }
.pcc__auth-dialog h2 { margin: 0 48px 14px 0; color: #fff; font: 700 28px/1.25 Roboto, Arial, sans-serif; letter-spacing: .02em; word-break: normal; }
.pcc__auth-dialog p { margin: 0 0 24px; font: 400 18px/1.5 Roboto, Arial, sans-serif; word-break: normal; overflow-wrap: normal; }
.pcc__auth-close { position: absolute; top: 12px; right: 12px; display: grid; width: 46px; height: 46px; place-items: center; padding: 0; color: #fff; border: 2px solid rgba(255,255,255,.65); border-radius: 50%; background: transparent; cursor: pointer; font: 700 32px/1 Arial, sans-serif; }
.pcc__auth-close:hover { border-color: #fff; background: rgba(255,255,255,.1); }
.pcc__auth-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.pcc__auth-actions .pcc__button { color: #fff; border-color: #1379c3; background: #1379c3; font: 700 14px/20px Roboto, Arial, sans-serif; text-align: center; }
.pcc__auth-actions .pcc__button:hover { background: #0f64a2; }
.pcc__photo-position-prompt { position: fixed; inset: 0; z-index: 1000000; display: grid; padding: 20px; place-items: center; background: rgba(0,0,0,.78); }
.pcc__photo-position-prompt[hidden] { display: none !important; }
.pcc__photo-position-dialog { width: min(100%, 760px); padding: 28px; color: #ccccdc; border: 1px solid rgba(204,204,220,.25); border-radius: 12px; background: #181b1f; box-shadow: 0 24px 80px rgba(0,0,0,.5); font-family: Roboto, Arial, sans-serif; }
.pcc__photo-position-dialog h2 { margin: 0 0 8px; color: #fff; font: 700 25px/1.25 Roboto, Arial, sans-serif; }
.pcc__photo-position-dialog p { margin: 0 0 18px; font: 400 16px/1.5 Roboto, Arial, sans-serif; }
.pcc__photo-position-frame { position: relative; width: 100%; aspect-ratio: 678 / 520; overflow: hidden; border: 2px solid #1379c3; border-radius: 8px; background: #fff; cursor: grab; touch-action: none; user-select: none; }
.pcc__photo-position-frame:active { cursor: grabbing; }
.pcc__photo-position-frame img { display: block; width: 100%; height: 100%; pointer-events: none; object-fit: cover; object-position: 50% 50%; }
.pcc__photo-position-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 18px; }
.pcc__photo-position-actions .pcc__button { margin: 0; font: 700 14px/20px Roboto, Arial, sans-serif; text-transform: none; }
.pcc .pcc__photo-position-actions .pcc__button--primary { color: #fff; border-color: #1379c3; background: #1379c3; }
.pcc .pcc__photo-position-actions .pcc__button--primary:hover { background: #0f64a2; }
.pcc .pcc__photo-position-actions .pcc__button--secondary { color: #fff; border-color: #5a5c69; background: #111217; }
.pcc .pcc__photo-position-actions .pcc__button--secondary:hover { border-color: #1379c3; background: #171b21; }
.pcc__remove-directory-prompt { position: fixed; inset: 0; z-index: 1000001; display: grid; padding: 20px; place-items: center; background: rgba(0,0,0,.78); }
.pcc__remove-directory-prompt[hidden] { display: none !important; }
.pcc__remove-directory-dialog { width: min(100%, 620px); padding: 28px; color: #ccccdc; border: 1px solid rgba(204,204,220,.25); border-radius: 12px; background: #181b1f; box-shadow: 0 24px 80px rgba(0,0,0,.5); font-family: Roboto, Arial, sans-serif; word-break: normal; overflow-wrap: normal; }
.pcc__remove-directory-dialog h2 { margin: 0 0 10px; color: #fff; font: 700 25px/1.25 Roboto, Arial, sans-serif; word-break: normal; overflow-wrap: normal; }
.pcc__remove-directory-dialog p { margin: 0; font: 400 16px/1.5 Roboto, Arial, sans-serif; word-break: normal; overflow-wrap: normal; }
.pcc__remove-directory-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 20px; }
.pcc__remove-directory-actions .pcc__button { margin: 0; font: 700 14px/20px Roboto, Arial, sans-serif; text-transform: none; }
.pcc .pcc__remove-directory-actions .pcc__button--primary { color: #fff; border-color: #1379c3; background: #1379c3; }
.pcc .pcc__remove-directory-actions .pcc__button--secondary { color: #fff; border-color: #5a5c69; background: #111217; }
.pcc-account-title { margin-bottom: 20px; color: #fff; font-family: "Fugaz One", sans-serif; }

/* Public Meet the Pack hub and approved-card masonry. */
.pcc-public-hub { width: 100%; }
.pcc-public-hub__toggle { display: flex; width: min(100%, 420px); min-height: 56px; margin: 0 auto 46px; padding: 14px 24px; align-items: center; justify-content: center; color: #fff; border: 0; border-radius: 4px; background: #2187c5; cursor: pointer; font: 600 14px/1.35 Roboto, Arial, sans-serif; text-align: center; }
.pcc-public-hub__toggle:hover, .pcc-public-hub__toggle:focus-visible { background: #176fa8; }
.pcc-public-hub__creator { display: grid; overflow: hidden; grid-template-rows: 0fr; margin: 0; opacity: 0; background: #2e334388; transition: grid-template-rows .42s ease, opacity .28s ease, margin .42s ease; }
.pcc-public-hub__creator.is-open { grid-template-rows: 1fr; margin-bottom: 48px; opacity: 1; }
.pcc-public-hub__creator-inner { min-height: 0; overflow: hidden; padding: 0 24px; transition: padding .42s ease; }
.pcc-public-hub__creator.is-open .pcc-public-hub__creator-inner { padding-top: 0; padding-bottom: 0; }
.pcc-public-hub__creator .pcc,
.pcc-public-hub__creator section.pcc.pcc[data-pcc-root] { background: transparent !important; box-shadow: none !important; clip-path: none !important; }
.pcc-public-hub__creator .pcc .pcc__creator.pcc__creator { background: transparent !important; }
.pcc-public-hub__divider { width: 100%; height: 0; margin: 0 0 32px; border: 0; border-top: 1px solid rgba(204,204,220,.42); }
.pcc-gallery { position: relative; width: 100%; }
.pcc-gallery__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-rows: 1px; gap: 20px; align-items: start; opacity:1; transition:opacity .22s ease; }
.pcc-gallery[data-pcc-gallery-loading] .pcc-gallery__grid { position:absolute; inset:0; visibility:hidden; opacity:0; pointer-events:none; }
.pcc-gallery[data-pcc-gallery-loading] .pcc-gallery__pagination { visibility:hidden; }
.pcc-gallery__skeleton { display:none; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; align-items:start; }
.pcc-gallery[data-pcc-gallery-loading] .pcc-gallery__skeleton { display:grid; }
.pcc-gallery__skeleton-card { position:relative; min-height:680px; overflow:hidden; border:7px solid #252a31; border-radius:11px; background:#252a31; }
.pcc-gallery__skeleton-card::after { position:absolute; inset:0; content:""; transform:translateX(-110%); background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.07) 48%,transparent 76%); animation:pcc-gallery-shimmer 1.55s ease-in-out infinite; }
.pcc-gallery__skeleton-header,.pcc-gallery__skeleton-footer { height:38px; background:#30363f; }
.pcc-gallery__skeleton-footer { position:absolute; right:0; bottom:0; left:0; height:32px; }
.pcc-gallery__skeleton-identity,.pcc-gallery__skeleton-details { margin:11px 10px 0; padding:14px; border-radius:8px; background:#343a43; }
.pcc-gallery__skeleton-identity { height:88px; }
.pcc-gallery__skeleton-photo { height:260px; margin:15px 10px 0; border-radius:8px; background:#343a43; }
.pcc-gallery__skeleton-details { min-height:205px; }
.pcc-gallery__skeleton-card i { display:block; height:14px; margin-bottom:12px; border-radius:999px; background:#454c57; }
.pcc-gallery__skeleton-card i:nth-child(1) { width:66%; }
.pcc-gallery__skeleton-card i:nth-child(2) { width:43%; }
.pcc-gallery__skeleton-details i:nth-child(2) { width:78%; }
.pcc-gallery__skeleton-details i:nth-child(3) { width:58%; }
.pcc-gallery__skeleton-details i:nth-child(4) { width:84%; }
.pcc-gallery__skeleton-details i:nth-child(5) { width:48%; }
@keyframes pcc-gallery-shimmer { to { transform:translateX(110%); } }
.pcc-gallery__item { width: 100%; min-width: 0; margin: 0; }
.pcc-gallery__pagination { margin-top: 24px; }
.pcc-gallery__pagination ul { display: flex; margin: 0; padding: 0; flex-wrap: wrap; gap: 8px; justify-content: center; list-style: none; }
.pcc-gallery__pagination a, .pcc-gallery__pagination span { display: inline-flex; min-width: 42px; min-height: 42px; padding: 8px 12px; align-items: center; justify-content: center; color: #fff; border: 1px solid rgba(204,204,220,.42); border-radius: 4px; background: #111217; font: 700 14px/1 Roboto, Arial, sans-serif; text-decoration: none; }
.pcc-gallery__pagination a:hover, .pcc-gallery__pagination a:focus-visible, .pcc-gallery__pagination .current { border-color: #2187c5; background: #2187c5; }
.pcc-gallery-card { --gallery-outer:#000098; --gallery-ink:#000; --gallery-container:rgba(255,255,255,.8); --gallery-tag:#2187c5; --gallery-tag-ink:#fff; position: relative; width: 100%; max-width: 100%; overflow: hidden; color: var(--gallery-ink); border: 7px solid var(--gallery-outer); border-radius:11px; background: var(--gallery-outer); font-family:"Open Sans",sans-serif; }
.pcc-gallery-card__pattern { position:absolute; inset:38px 0 32px; background-position:center; background-size:cover; }
.pcc-gallery-card[data-pattern="paws"] .pcc-gallery-card__pattern { background-image:url("../patterns/paw-prints.png"); }
.pcc-gallery-card[data-pattern="pride"] .pcc-gallery-card__pattern { background-image:url("../patterns/pup-pride.png"); }
.pcc-gallery-card[data-pattern="trans-pride"] .pcc-gallery-card__pattern { background-image:url("../patterns/trans-pride.png"); }
.pcc-gallery-card[data-pattern="progressive-pride"] .pcc-gallery-card__pattern { background-image:url("../patterns/progressive-pride.png"); }
.pcc-gallery-card[data-pattern="bones"] .pcc-gallery-card__pattern { background-image:url("../patterns/pup-bones.png"); }
.pcc-gallery-card[data-pattern="none"] .pcc-gallery-card__pattern { display:none; }
.pcc-gallery-card__header,.pcc-gallery-card__footer { position:relative; z-index:1; display:grid; place-items:center; color:#fff; background:var(--gallery-outer); font-family:Oxanium,sans-serif; font-weight:700; text-align:center; }
.pcc-gallery-card__header { height:38px; grid-template-columns:25px minmax(0,1fr) 25px; gap:8px; padding:0 8px; font-size:13px; line-height:1; letter-spacing:.1em; white-space:nowrap; }
.pcc-gallery-card__header img { width:25px; height:25px; object-fit:contain; }
.pcc-gallery-card__header img:last-child { transform:scaleX(-1); }
.pcc-gallery-card__footer { min-height:32px; padding:5px 8px; font-size:11px; letter-spacing:.1em; }
.pcc-gallery-card__body { position:relative; z-index:1; display:grid; gap:15px; padding:11px 10px 10px; }
.pcc-gallery-card__identity,.pcc-gallery-card__details { padding:10px 13px; border-radius:8px; background:var(--gallery-container); }
.pcc-gallery-card__name { display:flex; min-width:0; align-items:center; justify-content:space-between; gap:10px; }
.pcc-gallery-card__name strong { min-width:0; font:400 24px/1.25 "Fugaz One",sans-serif; hyphens:none; overflow-wrap:break-word; word-break:normal; }
.pcc-gallery-card__name > span { flex:0 0 auto; font-size:40px; line-height:1; }
.pcc-gallery-card__identity p { margin:1px 0 0; hyphens:none; overflow-wrap:break-word; word-break:normal; font-size:14px; line-height:20px; }
.pcc-gallery-card__photo { width:100%; height:260px; overflow:hidden; border-radius:8px; background:#fff; }
.pcc-gallery-card__photo img { display:block; width:100%; height:100%; object-fit:cover; }
.pcc-gallery-card__details { display:grid; gap:6px; }
.pcc-gallery-card__row { display:grid; min-height:22px; grid-template-columns:82px minmax(0,1fr); gap:7px; align-items:start; }
.pcc-gallery-card__row > strong { padding-top:4px; font-size:12px; font-weight:800; line-height:16px; white-space:nowrap; }
.pcc-gallery-card__tags { display:flex; min-width:0; flex-wrap:wrap; gap:5px 7px; }
.pcc-gallery-card__tags span { display:inline-flex; min-height:22px; align-items:center; max-width:100%; padding:2px 10px; color:var(--gallery-tag-ink); border-radius:999px; background:var(--gallery-tag); font-size:12px; line-height:18px; hyphens:none; overflow-wrap:break-word; text-align:center; white-space:normal; word-break:normal; }
.pcc-gallery-card__extra { margin:1px 0 0; hyphens:none; overflow-wrap:break-word; word-break:normal; font-size:12px; font-style:italic; font-weight:600; line-height:16px; }
.pcc-gallery-card .pcc-gallery-card__identity p,
.pcc-gallery-card .pcc-gallery-card__extra { color:var(--gallery-ink) !important; }

/* Reusable carousel rail plus the separate introduction used on blog posts. */
.pcc-pack-carousel-blog { --pcc-carousel-bg:#1a1c1e; width:100%; margin:64px 0 28px; color:#fff; }
.pcc-pack-carousel-blog__intro { margin:0 0 28px; text-align:center; }
.pcc-pack-carousel-blog__divider { width:100%; height:1px; margin:0 0 44px; padding:0; border:0; background:rgba(204,204,220,.42); }
.pcc-pack-carousel-blog__intro h2 { margin:0; color:#fff; font:400 22px/1.4 "Fugaz One",sans-serif; letter-spacing:.01em; }
.pcc-pack-carousel-blog__intro p { margin:12px 0 0; color:#dcdcdc; font:400 italic 14px/1.5 Roboto,Arial,sans-serif; }
.pcc-pack-carousel { --pcc-carousel-bg:#1a1c1e; width:100%; margin:0 0 28px; padding:0 0 24px; color:#fff; }
.pcc-pack-carousel__stage { position:relative; width:100%; overflow:hidden; }
.pcc-pack-carousel__stage::after { position:absolute; z-index:2; top:0; right:0; width:56px; height:100%; content:""; pointer-events:none; background:linear-gradient(90deg,rgba(26,28,30,0),var(--pcc-carousel-bg)); transition:opacity .25s ease; }
.pcc-pack-carousel.is-at-end .pcc-pack-carousel__stage::after { opacity:0; }
.pcc-pack-carousel__viewport { width:100%; margin:0; overflow:hidden; touch-action:pan-y; transition:height .3s ease; }
.pcc-pack-carousel__track { display:flex; align-items:flex-start; gap:20px; transition:transform .42s ease; will-change:transform; }
.pcc-pack-carousel__slide { flex:0 0 333px; width:333px; min-width:333px; margin:0; }
.pcc-pack-carousel__cta { display:flex; width:100%; min-height:383px; padding:18px 15px 16px; flex-direction:column; color:#efefef; border:1px solid #3397df; border-radius:8px; background:#165684; font-family:Roboto,Arial,sans-serif; }
.pcc-pack-carousel__cta h3 { max-width:200px; margin:0; color:#fff; font:400 22px/1.45 "Fugaz One",sans-serif; overflow-wrap:normal; word-break:normal; }
.pcc-pack-carousel__cta-copy { margin-top:40px; }
.pcc-pack-carousel__cta-copy p { margin:0 0 28px; color:#efefef; font:400 italic 14px/24px Roboto,Arial,sans-serif; overflow-wrap:normal; word-break:normal; }
.pcc-pack-carousel__cta-actions { display:grid; gap:12px; margin-top:auto; }
.pcc-pack-carousel__cta-actions a,.pcc-pack-carousel__all { display:flex; min-height:42px; align-items:center; justify-content:center; padding:9px 14px; color:#fff !important; border:0; border-radius:4px; background:#1379c2; font:700 14px/24px Roboto,Arial,sans-serif; text-align:center; text-decoration:none !important; }
.pcc-pack-carousel__cta-actions a:hover,.pcc-pack-carousel__cta-actions a:focus-visible,.pcc-pack-carousel__all:hover,.pcc-pack-carousel__all:focus-visible { color:#fff !important; background:#2187c5; }
.pcc-pack-carousel__controls { display:grid; margin-top:28px; grid-template-columns:1fr auto 1fr; align-items:center; }
.pcc-pack-carousel__all { width:196px; grid-column:2; }
.pcc-pack-carousel__arrows { display:flex; grid-column:3; justify-self:end; gap:13px; }
.pcc-pack-carousel__arrow { display:block; width:47px; height:47px; margin:0; padding:0; border:0; border-radius:50%; background:transparent; box-shadow:none; cursor:pointer; }
.pcc-pack-carousel__arrow img { display:block; width:47px; height:47px; }
.pcc-pack-carousel__arrow--next img { transform:scaleX(-1); }
.pcc-pack-carousel__arrow:hover,.pcc-pack-carousel__arrow:focus-visible { background:transparent; box-shadow:0 0 0 2px rgba(51,151,223,.45); outline:0; }
.pcc-pack-carousel__arrow:disabled { opacity:.4; cursor:default; }
.pcc-pack-carousel__arrow:disabled:hover { box-shadow:none; }
.pcc-pack-carousel__status { width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap; }

/* WooCommerce product-page footer: related products plus the community rail. */
.single-product .related.products { margin-top:20px !important; margin-bottom:44px !important; padding-bottom:75px !important; }
.single-product .related.products > h2,
.pcc-product-section-title { display:flex; width:100%; margin:0 0 42px; align-items:center; gap:20px; color:#fff; text-align:center; }
.single-product .related.products > h2::before,
.single-product .related.products > h2::after,
.pcc-product-section-title::before,
.pcc-product-section-title::after { height:1px; flex:1 1 auto; content:""; background:rgba(204,204,220,.55); }
body.single-product.woocommerce section.related.products > h2 { position:relative !important; inset:auto !important; box-sizing:border-box !important; display:flex !important; width:100% !important; max-width:none !important; margin:0 0 42px !important; padding:0 !important; align-items:center !important; justify-content:center !important; gap:20px !important; color:#fff !important; font:400 23px/1.3 "Fugaz One",sans-serif !important; letter-spacing:.01em; text-align:center !important; white-space:nowrap; transform:none !important; }
body.single-product.woocommerce section.related.products > h2::before,
body.single-product.woocommerce section.related.products > h2::after { position:static !important; inset:auto !important; box-sizing:border-box !important; display:block !important; width:auto !important; min-width:0 !important; max-width:none !important; height:1px !important; margin:0 !important; padding:0 !important; flex:1 1 0 !important; border:0 !important; background:rgba(204,204,220,.55) !important; opacity:1 !important; content:"" !important; transform:none !important; }
.pcc-product-section-title h2 { margin:0; color:#fff; font:400 23px/1.3 "Fugaz One",sans-serif; letter-spacing:.01em; white-space:nowrap; }
.single-product .related.products .meta-wrapper,
.single-product .related.products .heading-title.product-name,
.single-product .related.products .heading-title.product-name a,
.single-product .related.products .price { text-align:left !important; }
.single-product .related.products .meta-wrapper::after { display:table; clear:both; content:""; }
.single-product .related.products .price { float:left; margin-right:0; margin-left:0; }
.single-product .related.products .star-rating { float:right; margin-right:0; margin-left:auto; }
.single-product .related.products .owl-nav { position:static !important; display:flex !important; width:100% !important; height:47px !important; margin:28px 0 0 !important; padding:0 !important; justify-content:flex-end !important; gap:13px; visibility:visible !important; opacity:1 !important; transform:none !important; }
.single-product .related.products .owl-nav .owl-prev,
.single-product .related.products .owl-nav .owl-next { position:static !important; display:block !important; width:47px !important; height:47px !important; margin:0 !important; padding:0 !important; border:0 !important; border-radius:50% !important; visibility:visible !important; opacity:1; background:transparent url("../figma/carousel-arrow-left.svg") center/47px 47px no-repeat !important; box-shadow:none !important; cursor:pointer; transform:none !important; }
.single-product .related.products .owl-nav .owl-next { transform:scaleX(-1) !important; }
.single-product .related.products .owl-nav .owl-prev:hover,
.single-product .related.products .owl-nav .owl-prev:focus-visible,
.single-product .related.products .owl-nav .owl-next:hover,
.single-product .related.products .owl-nav .owl-next:focus-visible { box-shadow:0 0 0 2px rgba(51,151,223,.45) !important; outline:0; }
.single-product .related.products .owl-nav .disabled { opacity:.4; cursor:default; }
.pcc-product-pack { --pcc-carousel-bg:#1a1c1e; width:100%; margin:0; color:#fff; }
.pcc-product-pack .pcc-pack-carousel { margin-bottom:0; padding-bottom:0; }
.pcc-product-pack .pcc-pack-carousel__controls { grid-template-columns:1fr auto 1fr; }
.pcc-product-pack .pcc-pack-carousel__all { grid-column:2; grid-row:1; }
.pcc-product-pack .pcc-pack-carousel__arrows { grid-column:3; grid-row:1; }
.pcc-product-footer-divider { width:100%; height:1px; margin:72px 0 0; padding:0; border:0; background:rgba(204,204,220,.55); }

@media (max-width: 1100px) {
	.pcc-pack-carousel .pcc-gallery-card__header { font-size:13px; letter-spacing:.08em; }
}

@media (min-width: 761px) {
	.single-post .entry-content .pcc-pack-carousel-blog { width:calc(100% + 80px); max-width:calc(100vw - 40px); margin-left:-10px; }
}

@media (max-width: 760px) {
	.pcc-public-hub__creator-inner { padding-inline: 20px; }
	.pcc-gallery__grid,.pcc-gallery__skeleton { grid-template-columns: 1fr; }
	.pcc-pack-carousel-blog { margin-top:48px; }
	.pcc-pack-carousel-blog__intro { margin-bottom:22px; }
	.pcc-pack-carousel-blog__divider { margin-bottom:26px; }
	.pcc-pack-carousel-blog__intro h2 { font-size:22px; }
	.pcc-pack-carousel-blog__intro p { margin-top:8px; }
	.pcc-pack-carousel__viewport { width:calc(100% - 40px); margin-inline:20px; }
	.pcc-pack-carousel__stage::after { right:20px; }
	.pcc-pack-carousel__slide { flex-basis:min(333px,calc(100vw - 40px)); width:min(333px,calc(100vw - 40px)); min-width:min(333px,calc(100vw - 40px)); }
	.pcc-pack-carousel__controls { grid-template-columns:1fr auto; row-gap:20px; }
	.pcc-pack-carousel__all { grid-column:1 / -1; grid-row:1; }
	.pcc-pack-carousel__arrows { grid-column:2; grid-row:2; }
	.single-product .related.products { margin-top:20px !important; margin-bottom:34px !important; padding-bottom:75px !important; }
	.single-product .related.products > h2,
	.pcc-product-section-title { margin-bottom:34px; gap:12px; }
	.single-product .related.products > h2,
	.pcc-product-section-title h2 { font-size:22px; }
	.pcc-product-pack .pcc-pack-carousel__viewport { width:calc(100% - 20px); margin-left:0; margin-right:20px; }
	.pcc-product-pack .pcc-pack-carousel__stage::after { right:20px; }
	.pcc-product-pack .pcc-pack-carousel__controls { grid-template-columns:minmax(0,1fr) auto; column-gap:14px; row-gap:0; }
	.pcc-product-pack .pcc-pack-carousel__all { width:min(196px,100%); grid-column:1; grid-row:1; justify-self:center; }
	.pcc-product-pack .pcc-pack-carousel__arrows { grid-column:2; grid-row:1; }
	.pcc-product-footer-divider { margin-top:56px; }
  .pcc__creator { width: calc(100% + 36px); margin: -18px; padding: 18px 18px 48px; }
  .pcc__tabs { gap: 2px; justify-content: space-between; }
  .pcc__tabs button { padding-inline: 10px; }
}

@media (min-width: 761px) and (max-width: 980px) { .pcc-gallery__grid,.pcc-gallery__skeleton { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

@media (prefers-reduced-motion: reduce) { .pcc-gallery__skeleton-card::after { animation:none; } .pcc-gallery__grid { transition:none; } }

body.page-id-30347,
body.page-id-30347 #page,
body.page-id-30347 #content,
body.page-id-30347 .site-content,
body.page-id-30347 main,
body.page-id-30347 article { background:#1a1c1e !important; }

/* Creator shell and responsive desktop studio. */
.pcc { overflow: visible; border-radius: 0; background: #181b1f; box-shadow: 0 0 0 100vmax #181b1f; clip-path: inset(0 -100vmax); }
.pcc[data-pcc-hydrating] .pcc__creator { visibility: hidden !important; }
section.pcc.pcc[data-pcc-root] { border: 0 !important; outline: 0 !important; background: #181b1f !important; box-shadow: 0 0 0 100vmax #181b1f !important; }
section.pcc.pcc[data-pcc-root] section { border: 0 !important; outline: 0 !important; background: transparent !important; box-shadow: none !important; }
.pcc__shell { max-width: none; min-height: 0; margin: 0; padding: 0; }
.pcc__main { max-width: none; margin: 0; }
.pcc__intro, .pcc__main > [data-pcc-stage="quiz"] { max-width: none; padding: 40px 0; border-radius: 0; color: #ccccdc; background: transparent; }
.pcc__intro h1, .pcc__main > [data-pcc-stage="quiz"] .pcc__question legend { color: #fff; }
.pcc__intro .pcc__eyebrow { color: #ff7448; }
.pcc__intro .pcc__lede, .pcc__intro .pcc__fineprint, .pcc__main > [data-pcc-stage="quiz"] .pcc__progress-row p { color: #ccccdc; }
.pcc__intro .pcc__promise { color: #ccccdc; border-color: rgba(204,204,220,.25); background: #111217; }
.pcc__main > [data-pcc-stage="quiz"] .pcc__answer { color: #ccccdc; border-color: rgba(204,204,220,.2); background: #111217; }
.pcc__main > [data-pcc-stage="quiz"] .pcc__answer:hover { border-color: #5a86de; background: #151923; }
.pcc .pcc__creator.pcc__creator { width: 100%; margin: 0; padding: 32px 0 56px; border: 0 !important; background: #181b1f !important; box-shadow: none !important; }
.pcc__creator-inner { width: 100%; max-width: none; margin: 0; }
.pcc__admin-only-warning { margin: 0 0 24px; padding: 14px 16px; color: #fff; border: 2px solid #ff7448; border-radius: 4px; background: #422014; font-size: 14px; line-height: 1.5; }
.pcc__admin-only-warning strong { margin-right: 6px; color: #ffb49c; letter-spacing: .06em; }
.pcc__creator-grid { display: grid; grid-template-columns: 371px minmax(0, 1fr); gap: clamp(42px, 6vw, 78px); align-items: start; }
.pcc__preview-column { position: sticky; top: 24px; min-width: 0; }
.pcc__form-column { min-width: 0; }
.pcc__display-heading--form { margin-top: 0 !important; }

/* One chosen outer color controls the card body, border, and title bar. */
.pcc-pass { border-color: var(--pass-outer); }
.pcc-pass__header { background: var(--pass-outer); }

/* These text fields use the selected card font color, just like the row labels. */
.pcc .pcc__creator .pcc-pass .pcc-pass__identity p, .pcc .pcc__creator .pcc-pass .pcc-pass__extra { color: var(--pass-ink) !important; }
.pcc-pass__extra { max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
.pcc-pass__row { grid-template-columns: 82px minmax(0, 1fr); }
.pcc-pass__row > strong { white-space: nowrap; }
.pcc-pass__photo img.is-placeholder { filter: none; opacity: 1; }

/* Native color controls open the platform's touch-friendly picker. */
.pcc__color-field { grid-template-columns: minmax(0, 1fr) 64px; align-items: center; min-height: 50px; padding: 8px 10px; border: 1px solid rgba(204,204,220,.2); border-radius: 2px; background: #111217; }
.pcc__creator .pcc__editor input[type="color"] { width: 56px; height: 36px; margin: 0; padding: 3px; border: 1px solid rgba(204,204,220,.3); border-radius: 4px; background: #181b1f; cursor: pointer; }
.pcc__creator .pcc__editor input[type="color"]::-webkit-color-swatch-wrapper { padding: 0; }
.pcc__creator .pcc__editor input[type="color"]::-webkit-color-swatch { border: 0; border-radius: 2px; }
.pcc__creator .pcc__editor input[type="color"]::-moz-color-swatch { border: 0; border-radius: 2px; }
.pcc__creator .pcc__editor input[type="color"]:focus-visible { outline: 0; box-shadow: 0 0 0 1px #181b1f, 0 0 0 3px #3d71d9; }

@media (max-width: 899px) {
  .pcc__creator-inner { width: min(100%, 407px); }
  .pcc__creator-grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .pcc__preview-column { position: static; }
  .pcc__display-heading--form { margin-top: 0 !important; }
}

@media (max-width: 760px) {
  .pcc__intro, .pcc__main > [data-pcc-stage="quiz"] { padding: 32px 20px; }
  .pcc .pcc__creator.pcc__creator { width: 100%; margin: 0; padding: 18px 20px 48px; }
  .pcc__auth-actions { grid-template-columns: 1fr; }
  .pcc__auth-dialog { padding: 28px 22px; }
  .pcc__auth-dialog h2 { margin-right: 46px; font-size: 23px; }
  .pcc__auth-dialog p { font-size: 16px; line-height: 1.5; }
  .pcc__photo-position-dialog { padding: 22px 18px; }
  .pcc__photo-position-dialog h2 { font-size: 21px; }
  .pcc__photo-position-actions { grid-template-columns: 1fr; }
	.pcc__remove-directory-dialog { padding: 22px 18px; }
	.pcc__remove-directory-dialog h2 { font-size: 21px; }
}

/* Neutralize common WordPress/theme wrappers only when they contain this experience. */
body.page-id-30347 article#post-30347 > p.wp-block-paragraph,
body.page-id-30347 article#post-30347 > p.wp-block-paragraph:hover,
body.page-id-30347 article#post-30347 > p.wp-block-paragraph:focus,
body.page-id-30347 article#post-30347 code,
body.page-id-30347 article#post-30347 code:hover,
body.page-id-30347 article#post-30347 code:focus {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  color: inherit !important;
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  font: inherit !important;
  line-height: normal !important;
  white-space: normal !important;
}

body code:has(.pcc),
body code:has(.pcc-public-hub),
body code:has(.pcc):hover,
body code:has(.pcc-public-hub):hover,
body code:has(.pcc):focus,
body code:has(.pcc-public-hub):focus,
body pre:has(.pcc),
body pre:has(.pcc-public-hub),
body pre:has(.pcc):hover,
body pre:has(.pcc-public-hub):hover,
body pre:has(.pcc):focus,
body pre:has(.pcc-public-hub):focus {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  color: inherit !important;
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  font: inherit !important;
  line-height: normal !important;
  white-space: normal !important;
}

.entry-content .wp-block-shortcode:has(> .pcc),
.entry-content .wp-block-shortcode:has(> .pcc-public-hub),
.site-content .wp-block-shortcode:has(> .pcc),
.site-content .wp-block-shortcode:has(> .pcc-public-hub),
.wp-block-post-content .wp-block-shortcode:has(> .pcc),
.wp-block-post-content .wp-block-shortcode:has(> .pcc-public-hub),
.wp-block-group:has(> .pcc),
.wp-block-group:has(> .pcc-public-hub),
.wp-block-group:has(> .wp-block-shortcode .pcc),
.wp-block-group:has(> .wp-block-shortcode .pcc-public-hub),
.wp-block-column:has(.pcc),
.wp-block-column:has(.pcc-public-hub),
.wp-block-cover:has(.pcc),
.wp-block-cover:has(.pcc-public-hub),
.wp-block-post-content:has(.pcc),
.wp-block-post-content:has(.pcc-public-hub),
.entry-content > *:has(.pcc),
.entry-content > *:has(.pcc-public-hub),
.site-content > *:has(.pcc),
.site-content > *:has(.pcc-public-hub) {
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* The old page body contained a gallery heading after the shortcode. */
.pcc-public-hub ~ h2 { display: none !important; }

/* Center the public page title supplied by the active WordPress theme. */
body.page-id-30347 .page-title,
body.page-id-30347 h1.entry-title,
body.page-id-30347 main h1:first-of-type { width: 100%; text-align: center !important; }

/* Theme section rules must not reintroduce the pale intro/quiz panel. */
.pcc .pcc__main > .pcc__intro,
.pcc .pcc__main > [data-pcc-stage="quiz"] {
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
