.auth{--auth-input-h:3.5rem;isolation:isolate;background:var(--base-0);min-height:100dvh;position:relative;overflow:hidden}.auth-bg{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.auth-bg-art{filter:saturate(1.15)contrast(1.05);animation:auth-kenburns 28s var(--ease-ink) infinite alternate;position:absolute;inset:-4%}.auth-bg-art img{object-fit:cover;object-position:center 25%}.auth-bg:before{content:"";z-index:1;background:radial-gradient(120% 90% at 20% 40%, transparent 30%, #121014bf 75%), linear-gradient(to top, var(--base-0) 0%, #12101433 45%, #12101459 100%);position:absolute;inset:0}.auth-bg:after{content:"";z-index:2;opacity:.07;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");animation:1.2s steps(6,end) infinite auth-grain;position:absolute;inset:-50%}.auth-glow{z-index:1;filter:blur(90px);opacity:.55;border-radius:9999px;position:absolute}.auth-glow--a{opacity:.28;background:#9d8cff;width:42rem;height:42rem;animation:18s ease-in-out infinite alternate auth-drift;top:-14rem;right:-12rem}.auth-glow--b{opacity:.16;background:#ffb7d9;width:34rem;height:34rem;animation:22s ease-in-out infinite alternate-reverse auth-drift;bottom:-18rem;right:18%}.auth-grid{min-height:100dvh;display:grid;position:relative}@media (min-width:1024px){.auth-grid{grid-template-columns:minmax(0,1fr) 36rem}}@media (min-width:1440px){.auth-grid{grid-template-columns:minmax(0,1fr) 40rem}}.auth-stage{flex-direction:column;justify-content:space-between;min-width:0;padding:2.25rem 3rem 3rem;display:none;position:relative}@media (min-width:1024px){.auth-stage{display:flex}}.auth-stage-copy{max-width:40rem;animation:auth-rise .9s var(--ease-ink) .15s both;position:relative}.auth-chip{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--fg-0);letter-spacing:.14em;text-transform:uppercase;background:#12101473;border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:.5rem;padding:.375rem .75rem .375rem .5rem;font-size:.75rem;font-weight:600;display:inline-flex}.auth-chip-dot{background:#ff5d8f;border-radius:999px;width:.5rem;height:.5rem;animation:1.8s ease-in-out infinite auth-pulse;box-shadow:0 0 0 4px #ff5d8f33}.auth-stage-title{color:var(--fg-0);text-shadow:0 10px 40px #00000080;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-top:1.25rem;font-size:clamp(3rem,5.6vw,6.5rem);display:-webkit-box;overflow:hidden}.auth-stage-meta{color:var(--fg-1);flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-top:1rem;font-size:.95rem;display:flex}.auth-stage-meta b{color:var(--fg-0);font-weight:600}.auth-score{color:var(--warn);align-items:center;gap:.35rem;font-weight:700;display:inline-flex}.auth-stage-cta{color:var(--fg-0);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background .2s, transform .2s var(--ease-ink);background:#ffffff14;border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:.6rem;margin-top:1.75rem;padding:.7rem 1.1rem .7rem .8rem;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.auth-stage-cta:hover{background:#ffffff29;transform:translate(3px)}.auth-stage-cta-icon{background:var(--accent-grad);width:1.9rem;height:1.9rem;color:var(--on-accent);border-radius:999px;place-items:center;display:grid}.auth-reel{width:9.5rem;display:none;position:absolute;top:0;bottom:0;right:2.5rem;overflow:hidden;-webkit-mask-image:linear-gradient(#0000,#000 14% 86%,#0000);mask-image:linear-gradient(#0000,#000 14% 86%,#0000)}@media (min-width:1280px){.auth-reel{display:block}}.auth-reel-track{flex-direction:column;gap:1rem;padding:0 .9rem;animation:40s linear infinite auth-reel;display:flex}.auth-reel:before,.auth-reel:after{content:"";z-index:1;background:repeating-linear-gradient(#ffffff38 0 .55rem,#0000 .55rem 1.25rem);border-radius:2px;width:.45rem;animation:2.4s linear infinite auth-sprocket;position:absolute;top:0;bottom:0}.auth-reel:before{left:0}.auth-reel:after{right:0}.auth-reel-item{aspect-ratio:2/3;outline-offset:-1px;transition:transform .3s var(--ease-ink);border-radius:6px;outline:1px solid #ffffff1a;flex-shrink:0;display:block;position:relative;overflow:hidden;box-shadow:0 18px 40px -16px #000c}.auth-reel-item img{object-fit:cover;width:100%;height:100%}.auth-reel-item:hover{transform:scale(1.04)}.auth-reel:hover .auth-reel-track{animation-play-state:paused}.auth-panel{flex-direction:column;min-height:100dvh;display:flex;position:relative}@media (min-width:1024px){.auth-panel:before{content:"";z-index:-1;-webkit-backdrop-filter:blur(24px)saturate(1.2);backdrop-filter:blur(24px)saturate(1.2);clip-path:polygon(4.5rem 0,100% 0,100% 100%,0 100%);border-left:1px solid var(--line);background:linear-gradient(#1a171ad1,#121014f0);position:absolute;inset:0}.auth-panel:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(to bottom right,#0000 calc(50% - 1px),#d6c8ff73 50%,#0000 calc(50% + 1px));width:4.5rem;position:absolute;top:0;bottom:0;left:0}}.auth-panel-head{justify-content:space-between;align-items:center;height:4.5rem;padding:0 1.25rem;display:flex}@media (min-width:768px){.auth-panel-head{padding:0 2.5rem}}@media (min-width:1024px){.auth-panel-head{justify-content:flex-end;padding:0 3rem 0 6rem}}.auth-panel-main{flex-direction:column;flex:1;justify-content:center;padding:1rem 1.25rem 3rem;display:flex}@media (min-width:768px){.auth-panel-main{padding:1rem 2.5rem 3rem}}@media (min-width:1024px){.auth-panel-main{padding:0 4rem 4rem 7rem}}.auth-panel-inner{width:100%;max-width:25rem;animation:auth-rise .7s var(--ease-ink) both;margin:0 auto;position:relative}@media (max-width:1023.98px){.auth-panel-inner{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--line);background:#1a171ac7;border-radius:20px;padding:1.75rem 1.5rem;box-shadow:0 30px 80px -30px #000c}}.auth-ghost{pointer-events:none;-webkit-user-select:none;user-select:none;writing-mode:vertical-rl;letter-spacing:-.04em;color:#0000;-webkit-text-stroke:1px #d6c8ff2e;font-family:Noto Sans JP,Noto Sans CJK JP,Hiragino Sans,Yu Gothic,Meiryo,sans-serif;font-size:4.5rem;font-weight:900;line-height:1;display:none;position:absolute;top:0;right:-5.75rem}@media (min-width:1440px) and (min-height:760px){.auth-ghost{display:block}}.auth-eyebrow{color:var(--accent-text);letter-spacing:.22em;text-transform:uppercase;align-items:center;gap:.6rem;font-size:.72rem;font-weight:700;display:inline-flex}.auth-eyebrow:before{content:"";background:var(--accent-grad);border-radius:2px;width:1.75rem;height:2px}.auth-title{color:var(--fg-0);margin-top:.9rem;font-size:clamp(3rem,6vw,4.5rem)}.auth-title-grad{background:var(--accent-grad);color:#0000;-webkit-background-clip:text;background-clip:text}.auth-sub{color:var(--fg-2);margin-top:.75rem;font-size:.95rem;line-height:1.55}.auth-field{flex-direction:column;gap:.5rem;display:flex}.auth-label-row{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.auth-label{letter-spacing:.14em;text-transform:uppercase;color:var(--fg-2);font-size:.72rem;font-weight:600}.auth-control{position:relative}.auth-control-icon{left:1rem;top:calc(var(--auth-input-h) / 2);width:1.15rem;height:1.15rem;color:var(--fg-3);pointer-events:none;transition:color .2s;position:absolute;transform:translateY(-50%)}.auth-input{width:100%;height:var(--auth-input-h);color:var(--fg-0);border:1px solid var(--line);background:#ffffff09;border-radius:14px;outline:none;padding:0 1rem 0 2.9rem;font-size:1rem;transition:border-color .2s,box-shadow .2s,background-color .2s}.auth-input::placeholder{color:var(--fg-3)}.auth-input:hover{border-color:var(--line-strong)}.auth-input:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft), 0 10px 30px -12px #9d8cff80;background:#cea2ec0f}.auth-control:focus-within .auth-control-icon{color:var(--accent-text)}.auth-input[aria-invalid=true]{border-color:var(--danger)}.auth-input--toggle{padding-right:3.25rem}.auth-input--code{text-align:center;letter-spacing:.45em;text-indent:.45em;font-variant-numeric:tabular-nums;padding:0 3rem;font-size:1.5rem;font-weight:700}.auth-input--code::placeholder{letter-spacing:.45em}.auth-eye{right:.4rem;top:calc(var(--auth-input-h) / 2);width:2.75rem;height:2.75rem;color:var(--fg-2);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;transition:color .2s,background-color .2s;display:grid;position:absolute;transform:translateY(-50%)}.auth-eye:hover{color:var(--fg-0);background:#ffffff0f}.auth-eye:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.auth-link{color:var(--accent-text);text-underline-offset:4px;font-size:.82rem;text-decoration:none}.auth-link:hover{color:var(--accent);text-decoration:underline}.auth-caps{color:var(--warn);align-items:center;gap:.4rem;margin-top:.5rem;font-size:.78rem;display:flex}.auth-submit{cursor:pointer;background:var(--accent-grad);width:100%;height:3.5rem;color:var(--on-accent);letter-spacing:.01em;transition:transform .2s var(--ease-ink), box-shadow .2s, filter .2s;border:0;border-radius:14px;justify-content:center;align-items:center;gap:.6rem;font-size:1rem;font-weight:700;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 14px 36px -12px #9d8cffb3,inset 0 1px #ffffff73}.auth-submit:after{content:"";transition:transform .8s var(--ease-ink);background:linear-gradient(105deg,#0000 35%,#ffffff8c 50%,#0000 65%);position:absolute;inset:0;transform:translate(-120%)}.auth-submit:hover{transform:translateY(-1px);box-shadow:0 20px 44px -12px #9d8cffd9,inset 0 1px #ffffff73}.auth-submit:hover:after{transform:translate(120%)}.auth-submit:active{transform:translateY(1px)scale(.99)}.auth-submit:disabled{cursor:not-allowed;filter:grayscale(.35)brightness(.8);transform:none}.auth-submit:focus-visible{outline:2px solid var(--fg-0);outline-offset:3px}.auth-submit-arrow{transition:transform .2s var(--ease-ink)}.auth-submit:hover .auth-submit-arrow{transform:translate(4px)}.auth-spinner{border:2px solid;border-top-color:#0000;border-radius:999px;width:1.1rem;height:1.1rem;animation:.7s linear infinite auth-spin}.auth-social{gap:.75rem;display:grid}.auth-social--2{grid-template-columns:1fr 1fr}.auth-social-btn{border:1px solid var(--line);height:3.25rem;color:var(--fg-0);cursor:pointer;transition:background-color .2s, border-color .2s, transform .2s var(--ease-ink);background:#ffffff0a;border-radius:14px;justify-content:center;align-items:center;gap:.6rem;font-size:.95rem;font-weight:600;display:inline-flex}.auth-social-btn:hover{border-color:var(--line-strong);background:#ffffff14;transform:translateY(-1px)}.auth-social-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.auth-social-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.auth-social-btn svg{width:1.2rem;height:1.2rem}.auth-or{color:var(--fg-3);letter-spacing:.2em;text-transform:uppercase;align-items:center;gap:.9rem;margin:1.6rem 0;font-size:.7rem;display:flex}.auth-or:before,.auth-or:after{content:"";background:linear-gradient(to right, transparent, var(--line-strong), transparent);flex:1;height:1px}.auth-error{color:#ffb4b6;background:#e5484d1a;border:1px solid #e5484d4d;border-radius:12px;align-items:flex-start;gap:.6rem;padding:.75rem .9rem;font-size:.88rem;animation:.35s ease-in-out auth-shake;display:flex}.auth-foot{text-align:center;color:var(--fg-2);margin-top:2rem;font-size:.92rem}.auth-foot a{color:var(--fg-0);background-image:var(--accent-grad);background-position:0 100%;background-repeat:no-repeat;background-size:100% 2px;padding-bottom:2px;font-weight:600;text-decoration:none;transition:background-size .25s}.auth-foot a:hover{color:var(--on-accent);background-size:100% 100%;border-radius:4px}.auth-back{min-height:2.75rem;color:var(--fg-1);border:1px solid #0000;border-radius:999px;align-items:center;gap:.45rem;padding:0 .9rem;font-size:.88rem;text-decoration:none;transition:color .2s,border-color .2s,background-color .2s;display:inline-flex}.auth-back:hover{color:var(--fg-0);border-color:var(--line);background:#ffffff0a}.auth-header{margin-bottom:2rem}.auth-header--compact{margin-bottom:1.5rem}.auth-header--compact .auth-title{font-size:clamp(2.5rem,4.2vw,3.4rem)}.auth-header--compact .auth-sub{margin-top:.5rem}.auth-header--compact~.auth-or,.auth-header--compact~div .auth-or{margin:1.25rem 0}.auth-stack{flex-direction:column;gap:1.25rem;display:flex}.auth-hint{color:var(--fg-3);font-size:.78rem;line-height:1.45}.auth-hint b{font-weight:600}.auth-field-error{color:#ffb4b6;align-items:flex-start;gap:.4rem;font-size:.78rem;line-height:1.45;display:flex}.auth-ok{color:#8fd9a0;align-items:center;gap:.35rem;display:inline-flex}.auth-input:-webkit-autofill{-webkit-text-fill-color:var(--fg-0);caret-color:var(--fg-0);-webkit-box-shadow:inset 0 0 0 100px #221d24}.auth-strength{align-items:center;gap:.75rem;margin-top:.6rem;display:flex}.auth-strength-bars{flex:1;grid-template-columns:repeat(4,1fr);gap:.3rem;display:grid}.auth-strength-bars>span{background:#ffffff14;border-radius:4px;height:4px;transition:background-color .25s}.auth-strength{--s:var(--danger)}.auth-strength[data-level="2"]{--s:var(--warn)}.auth-strength[data-level="3"]{--s:#9d8cff}.auth-strength[data-level="4"]{--s:var(--ok)}.auth-strength-bars>span[data-on]{background:var(--s);box-shadow:0 0 10px -2px var(--s)}.auth-strength-label{text-align:right;letter-spacing:.06em;text-transform:uppercase;min-width:4.5rem;color:var(--s);font-size:.72rem;font-weight:600}.auth-secondary{border:1px solid var(--line);width:100%;height:3.25rem;color:var(--fg-0);cursor:pointer;background:#ffffff0a;border-radius:14px;justify-content:center;align-items:center;gap:.6rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:background-color .2s,border-color .2s;display:inline-flex}.auth-secondary:hover{border-color:var(--line-strong);background:#ffffff14}.auth-secondary:disabled{opacity:.5;cursor:not-allowed}.auth-secondary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}a.auth-submit{text-decoration:none}.auth-notice{border:1px solid var(--line);background:#ffffff0a;border-radius:16px;align-items:flex-start;gap:1rem;padding:1.1rem 1.15rem;display:flex}.auth-notice-icon{background:var(--accent-soft);width:2.75rem;height:2.75rem;color:var(--accent-text);border-radius:12px;flex-shrink:0;place-items:center;display:grid;box-shadow:inset 0 0 0 1px #d6c8ff33}.auth-notice--ok .auth-notice-icon{color:#8fd9a0;background:#46a75829;box-shadow:inset 0 0 0 1px #8fd9a040}.auth-notice--danger .auth-notice-icon{color:#ffb4b6;background:#e5484d24;box-shadow:inset 0 0 0 1px #ffb4b640}.auth-notice-title{color:var(--fg-0);font-weight:600}.auth-notice-body{color:var(--fg-1);overflow-wrap:anywhere;font-size:.9rem;line-height:1.55}.auth-notice-body b{color:var(--fg-0);font-weight:600}.auth-captcha{flex-direction:column;gap:.5rem;display:flex}.auth-captcha-widget:empty{display:none}.auth-captcha-status{border:1px dashed var(--line-strong);min-height:4.05rem;color:var(--fg-2);border-radius:14px;align-items:center;gap:.6rem;padding:.75rem 1rem;font-size:.82rem;line-height:1.45;display:flex}.auth-captcha-status--error{color:#ffb4b6;background:#e5484d14;border-style:solid;border-color:#e5484d59}.auth-spinner--sm{flex-shrink:0;width:.9rem;height:.9rem}@media (min-width:1024px) and (max-height:860px){.auth-title{margin-top:.6rem;font-size:3.25rem}.auth-sub{margin-top:.5rem}.auth{--auth-input-h:3.1rem}.auth-submit{height:3.1rem}.auth-stack{gap:1rem}.auth-header{margin-bottom:1.4rem}.auth-header--compact .auth-title{font-size:2.6rem}.auth-header--compact .auth-sub{display:none}.auth-social-btn{height:2.9rem}.auth-or{margin:1.15rem 0}.auth-foot{margin-top:1.4rem}.auth-panel-head{height:3.75rem}.auth-panel-main,.auth-stage{padding-bottom:2rem}.auth-stage-title{font-size:clamp(2.75rem,4.6vw,4.5rem)}.auth-stage-cta{margin-top:1.25rem}}@keyframes auth-kenburns{0%{transform:scale(1.02)translate(0)}to{transform:scale(1.12)translate(-1.5%,-1%)}}@keyframes auth-grain{0%{transform:translate(0)}20%{transform:translate(-5%,3%)}40%{transform:translate(3%,-6%)}60%{transform:translate(-7%,5%)}80%{transform:translate(6%,2%)}to{transform:translate(0)}}@keyframes auth-drift{0%{transform:translate(0)scale(1)}to{transform:translate(-6rem,4rem)scale(1.15)}}@keyframes auth-reel{0%{transform:translateY(0)}to{transform:translateY(-50%)}}@keyframes auth-sprocket{0%{background-position:0 0}to{background-position:0 -1.25rem}}@keyframes auth-rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes auth-pulse{50%{box-shadow:0 0 0 7px #ff5d8f00}}@keyframes auth-spin{to{transform:rotate(360deg)}}@keyframes auth-shake{25%{transform:translate(-4px)}75%{transform:translate(4px)}}@media (prefers-reduced-motion:reduce){.auth-bg-art,.auth-bg:after,.auth-glow,.auth-reel-track,.auth-reel:before,.auth-reel:after,.auth-chip-dot,.auth-stage-copy,.auth-panel-inner,.auth-error{animation:none}}
