.auth{isolation:isolate;background:#1a030b;place-items:center;min-height:100dvh;padding:76px 12px 28px;display:grid;position:relative}@media (min-width:768px){.auth{padding:96px 32px 48px}}.auth-room{z-index:-2;position:fixed;inset:0}.auth-room:after{content:"";background:radial-gradient(46% 40% at 50% 52%,#ffe2be1f,#0000 70%),radial-gradient(85% 75%,#0000 30%,#0000009e 100%);position:absolute;inset:0}.auth-dust{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.auth-logo{position:absolute;top:24px;left:20px}@media (min-width:768px){.auth-logo{top:32px;left:36px}}.auth-card{width:min(1060px,100%);animation:auth-in .9s var(--ease-silk) both;background:#fff;border-radius:22px;padding:8px;display:grid;box-shadow:0 60px 120px -40px #000000d9,0 24px 48px -24px #00000080}@media (min-width:900px){.auth-card{border-radius:26px;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);min-height:640px;padding:10px}}@keyframes auth-in{0%{opacity:0;transform:translateY(28px)scale(.985)}}.auth-form{flex-direction:column;justify-content:center;padding:34px 18px 30px;display:flex}@media (min-width:900px){.auth-form{padding:56px 48px}}.auth-art{background:radial-gradient(90% 70% at 50% 0,#ffffffe6,#0000 70%),linear-gradient(#fbf3ec,#f1e1d6);border-radius:15px;order:-1;height:230px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #6b0f2a0f,inset 0 -40px 60px -40px #6b0f2a1f}@media (min-width:900px){.auth-art{border-radius:18px;order:0;height:auto}}.auth-art-line{letter-spacing:-.01em;text-align:center;color:var(--color-ink);font-size:34px;line-height:1.05;display:none;position:absolute;top:52px;left:0;right:0}@media (min-width:900px){.auth-art-line{display:block}}@media (min-width:1100px){.auth-art-line{font-size:40px}}.auth-art-hint{z-index:2;text-align:center;color:#4a0b1e99;pointer-events:none;font-size:15px;animation:.7s 2.2s both auth-hint;position:absolute;top:12px;left:0;right:0}@media (min-width:900px){.auth-art-hint{font-size:17px;top:148px}}@media (min-width:1100px){.auth-art-hint{top:160px}}@keyframes auth-hint{0%{opacity:0;transform:translateY(6px)}}.gift-pile{z-index:1;touch-action:pan-y;position:absolute;inset:0}.gift-pile-item{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;will-change:transform;position:absolute;top:0;left:0}.gift-pile:not([data-ready]) .gift-pile-item{visibility:hidden}.gift-pile-item img{filter:drop-shadow(0 6px 8px #4a0b1e38);-webkit-user-drag:none;max-width:none;height:auto;width:100%!important}.gift-pile[data-held],.gift-pile[data-held] .gift-pile-item{cursor:grabbing}.auth-hint-wide{display:none}@media (min-width:900px){.auth-hint-phone{display:none}.auth-hint-wide{display:inline}}.wish-hang{transform-origin:50% 0;pointer-events:none;will-change:transform;width:198px;height:0;margin-left:-99px;display:none;position:absolute;top:196px;left:50%}@media (min-width:900px){.wish-hang{display:block}}@media (min-width:1100px){.wish-hang{top:208px}}.wish-thread{background:linear-gradient(#a77d3f,#f3e2b3 40%,#c9a560 70%,#9c7339);width:1.5px;height:34px;margin-left:-.75px;position:absolute;top:0;left:50%}.wish-pin{filter:drop-shadow(0 2px 2px #4a0b1e40);max-width:none;height:auto;margin-left:-17px;position:absolute;top:-15px;left:50%;width:34px!important}.wish-card{background:linear-gradient(170deg,#fffbf3,#f7eedd);border-radius:4px;width:198px;height:226px;padding:27px 17px 0;position:absolute;top:30px;left:0;box-shadow:inset 0 0 0 1px #c9a56073,inset 0 0 0 5px #fffbf3,inset 0 0 0 5.6px #c9a56059,0 14px 26px -10px #4a0b1e59,0 3px 6px -2px #4a0b1e2e}.wish-eyelet{background:#efe4cf;border-radius:50%;width:9px;height:9px;margin-left:-4.5px;position:absolute;top:7px;left:50%;box-shadow:inset 0 0 0 1.5px #c9a560,inset 0 1px 2px #4a0b1e4d}.wish-title{height:34px;font-family:var(--font-script);white-space:nowrap;color:#0000;-webkit-text-stroke:.35px #5e3f14b3;background-image:linear-gradient(100deg,#5e3f14 0%,#835d24 26%,#b48a43 44%,#8a6227 62%,#5a3c12 100%);-webkit-background-clip:text;background-clip:text;justify-content:center;align-items:center;margin:0 -10px 6px;padding:0 10px 2px;line-height:1.1;display:flex}.wish-row{align-items:center;gap:8px;height:38px;display:flex;position:relative}.wish-row:after{content:"";background:#a0783c47;height:1px;position:absolute;bottom:3px;left:0;right:0}.wish-slot{flex:none;place-items:center;width:30px;height:30px;display:grid}.wish-slot b{color:#8a24338c;font-size:9px;transition:opacity .2s,transform .2s}.wish-row[data-on] .wish-slot b{opacity:0;transform:scale(.3)}.wish-label{color:#4a0b1e;white-space:nowrap;font-size:13px;line-height:1}.wish-row[data-on] .wish-label{animation:.7s cubic-bezier(.45,.05,.4,1) .26s both wish-write}.wish-seal{opacity:0;filter:drop-shadow(0 3px 3px #4a0b1e59);max-width:none;height:auto;transition:opacity .16s,transform .2s;position:absolute;bottom:-14px;right:-16px;transform:rotate(-14deg)scale(1.7);width:54px!important}.wish-card[data-full] .wish-seal{opacity:1;pointer-events:auto;cursor:pointer;transition:opacity .12s .5s,transform .46s cubic-bezier(.3,1.6,.5,1) .5s;transform:rotate(-14deg)}.wish-card[data-full] .wish-seal:hover{transition:transform .26s cubic-bezier(.3,1.6,.5,1);transform:rotate(-6deg)scale(1.1)}.wish-card[data-breaking] .wish-seal{opacity:0;pointer-events:none;transition:transform .7s cubic-bezier(.5,-.4,.8,.6),opacity .3s .4s;transform:translate(26px,90px)rotate(70deg)scale(.9)}.auth-hint-full{display:none}.wish-seal-note{white-space:nowrap;color:#4a0b1e9e;opacity:0;font-size:13.5px;line-height:1;transition:opacity .15s,transform .15s;position:absolute;top:calc(100% + 22px);right:-6px;transform:translateY(-4px)rotate(-3deg)}.wish-card[data-full]:not([data-breaking]) .wish-seal-note{opacity:1;transition:opacity .5s 1.1s,transform .5s 1.1s;transform:rotate(-3deg)}@media (min-width:900px){.auth-art[data-full] .auth-hint-wide{display:none}.auth-art[data-full] .auth-hint-full{animation:.6s .7s both auth-hint;display:inline}}@keyframes wish-write{0%{clip-path:inset(-30% 100% -30% 0)}to{clip-path:inset(-30% -5% -30% 0)}}@media (prefers-reduced-motion:reduce){.auth-card,.auth-art-hint,.wish-row[data-on] .wish-label{animation:none}}
