.recipient-password-gate{--gate-primary:#93294f;--gate-deep:#24151a;--gate-accent:#e0b96f;--gate-soft:#f6dce3;min-height:100dvh;padding:max(1.25rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(1.25rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));background:var(--gate-deep);isolation:isolate;place-items:center;display:grid;position:relative;overflow:hidden}.recipient-password-gate[data-palette=sage]{--gate-primary:#537864;--gate-deep:#172c24;--gate-accent:#deb96e;--gate-soft:#dce9df}.recipient-password-gate[data-palette=midnight]{--gate-primary:#70477b;--gate-deep:#100d21;--gate-accent:#e8c87f;--gate-soft:#dcd5ee}.recipient-password-gate[data-palette=aurora]{--gate-primary:#0d7770;--gate-deep:#082b2a;--gate-accent:#77d4ca;--gate-soft:#cfefec}.recipient-password-gate[data-palette=sunset]{--gate-primary:#bf555b;--gate-deep:#4a2426;--gate-accent:#f0a17e;--gate-soft:#ffe2d7}.recipient-password-gate[data-palette=frost]{--gate-primary:#58788e;--gate-deep:#1e3442;--gate-accent:#b3d4e5;--gate-soft:#e2f0f6}.recipient-password-gate[data-palette=champagne]{--gate-primary:#a75f6a;--gate-deep:#3c272a;--gate-accent:#dabb79;--gate-soft:#f5dfdc}.recipient-password-gate[data-palette=plum]{--gate-primary:#783b5c;--gate-deep:#281421;--gate-accent:#d1aa67;--gate-soft:#ead6e2}.recipient-password-gate__preview,.recipient-password-gate__veil{position:absolute;inset:0}.recipient-password-gate__preview{background:radial-gradient(circle at 18% 16%, color-mix(in srgb, var(--gate-primary) 72%, transparent), transparent 34%), radial-gradient(circle at 82% 78%, color-mix(in srgb, var(--gate-accent) 34%, transparent), transparent 32%), linear-gradient(145deg, var(--gate-deep), color-mix(in srgb, var(--gate-deep) 68%, var(--gate-primary)));place-items:center;display:grid;overflow:hidden}.recipient-password-gate__glow{aspect-ratio:1;background:radial-gradient(circle, color-mix(in srgb, var(--gate-accent) 35%, transparent), transparent 68%);filter:blur(1rem);border-radius:50%;width:min(78vw,54rem);animation:9s ease-in-out infinite alternate password-gate-breathe;position:absolute}.recipient-password-gate__scene{background:linear-gradient(160deg, #ffffff2b, #ffffff0d), color-mix(in srgb, var(--gate-primary) 52%, transparent);filter:blur(11px);opacity:.76;border:1px solid #ffffff2e;border-radius:clamp(2rem,5vw,4rem);align-content:center;justify-items:center;gap:1.45rem;width:min(78vw,55rem);min-height:min(72vh,42rem);animation:16s ease-in-out infinite alternate password-gate-scene;display:grid;position:relative;transform:scale(1.09)rotate(-1deg);box-shadow:0 4rem 8rem #00000052}.recipient-password-gate__occasion-mark{aspect-ratio:1.12;background:var(--gate-primary);border-radius:1.5rem;width:clamp(9rem,22vw,14rem);position:relative;box-shadow:0 2rem 3rem #0000003d}.recipient-password-gate__occasion-mark:before,.recipient-password-gate__occasion-mark:after{content:"";background:var(--gate-accent);position:absolute}.recipient-password-gate__occasion-mark:before{inset:0 42%}.recipient-password-gate__occasion-mark:after{inset:42% 0}.recipient-password-gate:not([data-occasion=birthday]) .recipient-password-gate__occasion-mark{aspect-ratio:1.42;background:var(--gate-soft);border-radius:50% 50% 1.2rem 1.2rem;transform:rotate(-3deg)}.recipient-password-gate:not([data-occasion=birthday]) .recipient-password-gate__occasion-mark:before{background:var(--gate-primary);height:2px;inset:14% 10% auto}.recipient-password-gate:not([data-occasion=birthday]) .recipient-password-gate__occasion-mark:after{background:color-mix(in srgb, var(--gate-primary) 22%, transparent);border-radius:.7rem;inset:28% 18%}.recipient-password-gate__preview-title,.recipient-password-gate__preview-copy,.recipient-password-gate__preview-action{background:#ffffffc2;border-radius:999px;display:block}.recipient-password-gate__preview-title{width:min(56%,28rem);height:clamp(1.5rem,4vw,2.6rem)}.recipient-password-gate__preview-copy{opacity:.62;width:min(68%,34rem);height:.85rem}.recipient-password-gate__preview-copy--short{width:min(44%,22rem);margin-block-start:-.8rem}.recipient-password-gate__preview-action{background:var(--gate-accent);width:10rem;height:3.25rem;margin-block-start:.5rem}.recipient-password-gate__veil{z-index:1;-webkit-backdrop-filter:blur(3px)saturate(.86);backdrop-filter:blur(3px)saturate(.86);background:#140b0f66}.recipient-password-card{z-index:2;color:#281b1e;background:#fffcf8f0;border:1px solid #ffffff9e;border-radius:clamp(1.5rem,4vw,2rem);width:min(100%,31rem);padding:clamp(1.35rem,4vw,2.25rem);animation:.56s cubic-bezier(.2,.82,.2,1) both password-card-enter;position:relative;box-shadow:0 2.5rem 6rem #0a040761,inset 0 1px #ffffffe6}.recipient-password-card__brand{color:#281b1e;margin-block-end:1.75rem;text-decoration:none;display:inline-flex}.recipient-password-card__brand .brand-logo__mark{width:2.25rem;height:2.25rem}.recipient-password-card__brand .brand-logo__name{font-size:1.18rem}.recipient-password-card__lock{border:1px solid color-mix(in srgb, var(--gate-primary) 18%, transparent);background:color-mix(in srgb, var(--gate-primary) 9%, white);width:3.25rem;height:3.25rem;box-shadow:0 .75rem 1.6rem color-mix(in srgb, var(--gate-primary) 13%, transparent);color:var(--gate-primary);border-radius:1rem;place-items:center;margin-block-end:1.1rem;display:grid}.recipient-password-card__lock svg,.recipient-password-form svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:1.25rem}.recipient-password-card__eyebrow{color:var(--gate-primary);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .45rem;font-size:.72rem;font-weight:800}.recipient-password-card h1{max-width:13ch;font-family:var(--font-display);letter-spacing:-.035em;text-wrap:balance;margin:0;font-size:clamp(2rem,6vw,2.8rem);line-height:.98}.recipient-password-card__intro{color:#6f6063;max-width:38ch;margin:1rem 0 1.55rem;font-size:.96rem;line-height:1.55}.recipient-password-form{gap:.55rem;display:grid}.recipient-password-form>label{letter-spacing:.02em;font-size:.78rem;font-weight:780}.recipient-password-form__control{background:#fff;border:1px solid #d9cdca;border-radius:1rem;align-items:center;min-height:3.65rem;transition:border-color .16s,box-shadow .16s,transform .16s;display:flex;position:relative;box-shadow:inset 0 1px 2px #2c181d0a}.recipient-password-form__control:focus-within{border-color:var(--gate-primary);box-shadow:0 0 0 .24rem color-mix(in srgb, var(--gate-primary) 13%, transparent);transform:translateY(-1px)}.recipient-password-form__control[data-invalid=true]{border-color:#b3263f;box-shadow:0 0 0 .2rem #b3263f17}.recipient-password-form__field-icon{color:#8a757a;flex:none;place-items:center;width:3rem;display:grid}.recipient-password-form__field-icon svg{width:1.1rem}.recipient-password-form input{color:#281b1e;min-width:0;min-height:3.5rem;font:inherit;background:0 0;border:0;outline:0;flex:1;font-size:1rem}.recipient-password-form input::placeholder{color:#9a898d;opacity:1}.recipient-password-form__visibility{color:#746368;cursor:pointer;background:0 0;border:0;border-radius:.8rem;flex:none;place-items:center;width:2.8rem;height:2.8rem;margin-inline-end:.4rem;display:grid}.recipient-password-form__visibility:hover{background:color-mix(in srgb, var(--gate-primary) 8%, white);color:var(--gate-primary)}.recipient-password-form__hint{color:#817176;margin:0;font-size:.75rem}.recipient-password-form__error{color:#8c1930;background:#fff1f3;border:1px solid #b3263f2e;border-radius:.9rem;grid-template-columns:auto 1fr;align-items:start;gap:.6rem;margin-block-start:.3rem;padding:.8rem .9rem;font-size:.82rem;font-weight:650;line-height:1.42;animation:.24s ease-out both password-error-enter;display:grid}.recipient-password-form__error svg{width:1.05rem;margin-block-start:.08rem}.recipient-password-form__submit{background:linear-gradient(135deg, var(--gate-primary), color-mix(in srgb, var(--gate-primary) 76%, #411023));min-height:3.7rem;box-shadow:0 1rem 2rem color-mix(in srgb, var(--gate-primary) 25%, transparent);color:#fff;cursor:pointer;font:inherit;border:0;border-radius:1rem;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;margin-block-start:.65rem;padding-inline:1.1rem;font-weight:820;transition:box-shadow .18s,filter .18s,transform .18s;display:grid}.recipient-password-form__submit span{text-align:center}.recipient-password-form__submit:hover:not(:disabled){box-shadow:0 1.2rem 2.4rem color-mix(in srgb, var(--gate-primary) 34%, transparent);filter:saturate(1.08)brightness(1.04);transform:translateY(-2px)}.recipient-password-form__submit:active:not(:disabled){transform:translateY(0)}.recipient-password-form__submit:disabled{cursor:not-allowed;opacity:.55}.recipient-password-form__visibility:focus-visible,.recipient-password-form__submit:focus-visible,.recipient-password-card__brand:focus-visible{outline:.2rem solid var(--gate-accent);outline-offset:.18rem}.recipient-password-form__spinner{animation:.8s linear infinite password-spinner}.recipient-password-form__spinner circle{opacity:.28}.recipient-password-card__trust{border-block-start:1px solid #e8dedb;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-block-start:1.25rem;padding-block-start:1.1rem;display:grid}.recipient-password-card__trust span{color:#75666a;align-items:center;gap:.45rem;font-size:.7rem;font-weight:700;line-height:1.3;display:flex}.recipient-password-card__trust svg{fill:none;width:1rem;stroke:var(--gate-primary);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.9px;flex:none}@keyframes password-card-enter{0%{opacity:0;transform:translateY(1.5rem)scale(.975)}}@keyframes password-gate-breathe{to{transform:scale(1.12)translate(2%,-2%)}}@keyframes password-gate-scene{to{transform:scale(1.13)rotate(1deg)translate(1%,-1%)}}@keyframes password-error-enter{0%{opacity:0;transform:translateY(-.3rem)}}@keyframes password-spinner{to{transform:rotate(1turn)}}@media (width<=35rem){.recipient-password-gate{place-items:end center;padding-block-end:max(.75rem, env(safe-area-inset-bottom));padding-inline:.75rem}.recipient-password-gate__scene{border-radius:0;align-content:start;width:112vw;min-height:100dvh;padding-block-start:2.5rem}.recipient-password-gate__occasion-mark{width:8.5rem}.recipient-password-card{border-radius:1.45rem;max-height:calc(100dvh - 1.5rem);padding:1.3rem;overflow-y:auto}.recipient-password-card__brand{margin-block-end:1.15rem}.recipient-password-card__lock{width:2.9rem;height:2.9rem;margin-block-end:.8rem}.recipient-password-card h1{font-size:clamp(1.85rem,9vw,2.35rem)}.recipient-password-card__intro{margin-block:.75rem 1.2rem}.recipient-password-card__trust{grid-template-columns:1fr}}[dir=rtl] .recipient-password-form__submit svg:last-child{transform:scaleX(-1)}@media (prefers-reduced-motion:reduce){.recipient-password-card,.recipient-password-form__error,.recipient-password-gate__glow,.recipient-password-gate__scene,.recipient-password-form__spinner{animation:none}.recipient-password-form__control,.recipient-password-form__submit{transition:none}}
