/* A first page in the collector's folio. Artwork is decorative; the form
   remains the clearest, most accessible thing in the room. */
.pv-auth-journey {
  width: min(900px, calc(100vw - 32px)); padding: 0; border-radius: 24px;
  background: #181613; border-color: #b59a684d; overscroll-behavior: contain;
}
.pv-auth-journey[open] { display: grid; grid-template-columns: minmax(0, .92fr) minmax(0, 1fr); animation-duration: 650ms; }
.pv-auth-journey:not([data-stage="register"]):not([data-stage="welcome"]) { width: min(460px, calc(100vw - 24px)); grid-template-columns: 1fr; }
.pv-auth-journey::backdrop { background: #07090bd9; backdrop-filter: blur(9px); }
.pv-auth-journey .pv-dialog-x { top: 12px; right: 12px; color: #c9bfaf; z-index: 2; }
.pv-auth-journey .pv-dform { min-width: 0; margin: 0; }
.pv-auth-content { padding: 42px 36px 30px; }
.pv-auth-journey h2 { font-size: clamp(26px, 2.7vw, 34px); letter-spacing: -.05em; line-height: 1.16; margin: 11px 0 12px; }
.pv-auth-journey .pv-dlead { color: #c8c0b4; font-size: 14px; line-height: 1.65; }
.pv-auth-trust { display: flex; align-items: center; gap: 8px; margin: 0 0 20px; color: #d9c79f; font-size: 12px; line-height: 1.5; }
.pv-auth-trust::before { content: ""; width: 5px; height: 5px; border: 1px solid currentColor; transform: rotate(45deg); flex: none; }
.pv-auth-journey .pv-dfield > label { display: block; margin-bottom: 6px; font-size: 12.5px; color: var(--fg-dim); }
.pv-auth-journey .pv-dfield input { background: #0e1010; border-color: #b9b09d35; min-height: 48px; border-radius: 9px; }
.pv-auth-journey .pv-dfield input:focus { border-color: #d4ba87; box-shadow: 0 0 0 3px #d4ba8717; }
.pv-auth-journey .pv-dfield small { color: #a99e8c; }
.pv-auth-password { position: relative; }
.pv-auth-password input { padding-right: 66px; }
.pv-auth-reveal { position: absolute; inset: 2px 3px 2px auto; min-width: 58px; padding: 0 8px; border: 0; background: none; color: #d9c79f; font: inherit; font-size: 12px; cursor: pointer; border-radius: 7px; }
.pv-auth-reveal:hover { background: #d4ba8710; }
.pv-auth-journey .pv-dsubmit { margin-top: 20px; min-height: 48px; border: 1px solid #f0d7a570; background: linear-gradient(120deg, #e6cf9e, #b99a63); color: #191712; box-shadow: 0 5px 24px #ccab7320; transition: filter 180ms, box-shadow 250ms; }
.pv-auth-journey .pv-dsubmit:hover { filter: brightness(1.1); box-shadow: 0 5px 28px #ccab7338; }
.pv-auth-journey .pv-dsubmit:disabled { opacity: .75; }
.pv-auth-journey .pv-dswap { border-color: #c7b99530; min-height: 44px; color: #e1d6c5; font-size: 12.5px; }
.pv-auth-journey .pv-dlegal { color: #aaa08f; line-height: 1.65; }
.pv-auth-journey .pv-dlegal a { color: #d1c4ad; text-underline-offset: 3px; }
.pv-auth-journey .pv-dbenefits { color: #b1a695; padding-top: 16px; border-top: 1px solid #d4ba871c; line-height: 1.7; }
.pv-auth-research { margin: 10px 0 0; color: #a39784; font-size: 11px; line-height: 1.65; }
.pv-auth-journey .pv-doptional { margin: 8px 0 -5px; color: #b6ac9b; }
.pv-auth-journey .pv-doptional summary { min-height: 30px; align-content: center; }
.pv-auth-journey :is(button,a,summary):focus-visible { outline: 2px solid #e9c88d; outline-offset: 4px; }
.pv-auth-atelier { position: relative; isolation: isolate; min-width: 0; padding: 42px 32px 30px; overflow: hidden; border-right: 1px solid #c4b28d30; background: radial-gradient(ellipse at 35% 35%, #42676b40, transparent 65%), radial-gradient(ellipse at 100% 70%, #97714d2b, transparent 65%), #10191b; }
.pv-auth-atelier[hidden] { display: none; }
.pv-auth-atelier::after { content: ""; position: absolute; inset: 12px; border: 1px solid #d4ba8714; pointer-events: none; z-index: -1; border-radius: 12px; }
.pv-auth-atelier-title { margin: 23px 0 12px; font-family: var(--display); font-size: clamp(26px, 3vw, 37px); color: #f3e9d7; line-height: 1.18; letter-spacing: -.05em; max-width: 8ch; }
.pv-auth-atelier-lead { color: #b6c2be; max-width: 26ch; font-size: 13px; line-height: 1.75; margin: 0; }
.pv-auth-sleeves { position: relative; height: 224px; margin: 18px -15px 14px; perspective: 800px; }
.pv-auth-sleeves::after { content: ""; position: absolute; width: 70%; height: 22px; bottom: 9px; left: 15%; background: #0009; filter: blur(15px); }
.pv-auth-sleeves i { position: absolute; width: 126px; aspect-ratio: 5 / 7; top: 17px; left: calc(50% - 63px); display: block; padding: 4px; border: 1px solid #e0d6b94d; border-radius: 10px; background: linear-gradient(130deg, #d9e8e12e, #141c2199); box-shadow: 0 12px 25px #0007; overflow: hidden; animation: pv-auth-unfold 1.1s cubic-bezier(.2,.7,.2,1) both; }
.pv-auth-sleeves i:first-child { --turn: -16deg; --shift: -76px; transform: translateX(var(--shift)) rotate(var(--turn)); animation-delay: 100ms; }
.pv-auth-sleeves i:nth-child(2) { --turn: 1deg; --shift: 0px; z-index: 2; transform: translateY(-7px) rotate(1deg); }
.pv-auth-sleeves i:last-child { --turn: 16deg; --shift: 76px; transform: translateX(var(--shift)) rotate(var(--turn)); animation-delay: 180ms; }
.pv-auth-sleeves img { display: block; width: 100%; height: 100%; border-radius: 6px; object-fit: contain; }
.pv-auth-sleeves i::after { content: ""; position: absolute; inset: 0; background: linear-gradient(120deg, transparent 24%, #efffff22 32%, transparent 40%, transparent 65%, #ffe7b421 76%, transparent 82%); pointer-events: none; }
.pv-auth-promises { list-style: none; padding: 0; margin: 0; display: grid; gap: 16px; }
.pv-auth-promises li { padding-left: 16px; border-left: 1px solid #cbb28257; }
.pv-auth-promises strong { display: block; font-size: 12.5px; font-weight: 600; color: #eadcc2; }
.pv-auth-promises span { display: block; color: #a9b6b1; margin-top: 4px; font-size: 11.5px; line-height: 1.65; }
.pv-auth-firststeps { display: grid; gap: 10px; margin: 20px 0; }
.pv-auth-firststeps button { text-align: left; padding: 17px 16px; font: inherit; color: #e2d1ae; background: #d2ba8610; border: 1px solid #d2ba8633; border-radius: 9px; cursor: pointer; }
.pv-auth-firststeps button::after { content: "↗"; float: right; }
.pv-auth-firststeps button:hover { background: #d2ba8620; }
.pv-auth-welcome { align-content: center; min-height: 100%; box-sizing: border-box; display: grid; }
@keyframes pv-auth-unfold { from { opacity: 0; transform: translateY(24px) rotate(0deg); } }
@media (max-width: 680px) {
  .pv-auth-journey[open] { width: min(440px, calc(100vw - 20px)); grid-template-columns: minmax(0, 1fr); padding: 0; border-radius: 18px; max-height: calc(100dvh - 20px); }
  .pv-auth-atelier { display: none; }
  .pv-auth-content { padding: 38px 24px 24px; }
  .pv-auth-journey h2 { font-size: 30px; }
  .pv-auth-journey .pv-dbenefits { font-size: 11.5px; }
}
@media (prefers-reduced-motion: reduce) {
  .pv-auth-journey[open], .pv-auth-sleeves i { animation: none; }
  .pv-auth-journey * { transition: none; }
}
.pv-auth-journey[data-still="true"], .pv-auth-journey[data-still="true"] * { animation: none; transition: none; }
