*{box-sizing:border-box;margin:0;padding:0}body{color:#faf7ef;font-family:var(--font-inter,"Inter"),sans-serif;opacity:1;background:#0a0a0a;min-height:100vh;overflow-x:hidden}.auth-back-home{color:#faf7ef66;font-family:var(--font-jb-mono,"JetBrains Mono"),monospace;letter-spacing:.15em;text-transform:uppercase;align-items:center;gap:6px;font-size:11px;text-decoration:none;transition:color .3s;display:flex}.auth-back-home:hover{color:#faf7ef}.auth-back-arrow{font-size:14px}.auth-brand{margin-bottom:4px}.auth-logo-mark{color:#faf7ef;font-family:var(--font-noto-serif-jp,"Noto Serif JP"),serif;letter-spacing:.12em;font-size:clamp(48px,8vw,64px);font-weight:700;line-height:1.2}.auth-overline{color:#7a8c6e;font-family:var(--font-jb-mono,"JetBrains Mono"),monospace;letter-spacing:.35em;text-transform:uppercase;margin-bottom:40px;font-size:10px}.auth-fields{flex-direction:column;gap:16px;display:flex}.auth-field{text-align:left}.auth-label{color:#faf7ef66;font-family:var(--font-jb-mono,"JetBrains Mono"),monospace;letter-spacing:.2em;text-transform:uppercase;margin-bottom:8px;font-size:10px;display:block}.auth-pw-wrap{position:relative}.auth-consent{flex-direction:column;gap:12px;margin-top:4px;display:flex}.auth-checkbox-row{text-align:left;align-items:flex-start;gap:10px;display:flex}.auth-checkbox-row input[type=checkbox]{appearance:none;cursor:pointer;background:#faf7ef08;border:1.5px solid #faf7ef26;border-radius:4px;width:18px;min-width:18px;height:18px;margin-top:1px;transition:border-color .3s,background .3s,box-shadow .3s;position:relative}.auth-checkbox-row input[type=checkbox]:checked{background:#7a8c6e;border-color:#7a8c6e}.auth-checkbox-row input[type=checkbox]:checked:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:9px;position:absolute;top:2px;left:5px;transform:rotate(45deg)}.auth-checkbox-row input[type=checkbox]:focus-visible{border-color:#7a8c6e;outline:none;box-shadow:0 0 0 3px #7a8c6e33}.auth-checkbox-label{color:#faf7ef80;cursor:pointer;font-size:12px;line-height:1.5}.auth-checkbox-label a{color:#7a8c6e;text-underline-offset:2px;text-decoration:underline;transition:color .3s}.auth-checkbox-label a:hover{color:#a3b294}.auth-checkbox-label.required:after{color:#c47a6e;content:" *"}.auth-submit{color:#faf7ef;cursor:pointer;font-family:var(--font-inter,"Inter"),sans-serif;letter-spacing:.08em;background:#7a8c6e;border:none;border-radius:10px;margin-top:8px;padding:14px;font-size:14px;font-weight:500;transition:all .3s;position:relative;overflow:hidden}.auth-submit:before{content:"";background:linear-gradient(45deg,#0000 30%,#ffffff1a 50%,#0000 70%);transition:transform .6s;position:absolute;inset:0;transform:translate(-100%)}.auth-submit:hover{background:#5e6e54;transform:translateY(-1px);box-shadow:0 8px 24px #7a8c6e4d}.auth-submit:hover:before{transform:translate(100%)}.auth-submit:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.auth-error{color:#c47a6e;background:#c47a6e0f;border:1px solid #c47a6e26;border-radius:6px}.auth-error,.auth-success{text-align:left;margin-bottom:8px;padding:10px 14px;font-size:12px}.auth-success{color:#7a8c6e;background:#7a8c6e0f;border:1px solid #7a8c6e26;border-radius:6px}.auth-hint{color:#faf7ef66;font-size:13px;line-height:1.6}.auth-footer-link{text-align:center;margin-top:4px}.auth-text-btn{color:#faf7ef66;cursor:pointer;font-family:var(--font-inter,"Inter"),sans-serif;letter-spacing:.02em;background:0 0;border:none;padding:0;font-size:12px;text-decoration:none;transition:color .3s}.auth-text-btn:hover{color:#7a8c6e}.auth-alt-link{color:#faf7ef66;letter-spacing:.02em;text-align:center;margin-top:20px;font-size:12px}.auth-alt-link .auth-text-btn{color:#7a8c6e}.auth-fullscreen{background:#0a0a0a;justify-content:center;align-items:center;width:100dvw;min-height:100dvh;display:flex;position:relative;overflow-x:hidden}.auth-shader-bg{opacity:0;z-index:0;width:100%;height:100%;animation:1s ease-out .1s forwards authShaderFadeIn;position:absolute;top:0;left:0}.auth-shader-bg canvas{display:block}@keyframes authShaderFadeIn{0%{opacity:0}to{opacity:1}}.auth-fullscreen>.auth-back-home{z-index:10;position:fixed;top:28px;left:32px}.auth-glass-card{-webkit-backdrop-filter:blur(24px)saturate(1.2);opacity:0;z-index:5;background:#0a0a0a59;border:1px solid #faf7ef14;border-radius:20px;width:440px;max-width:calc(100vw - 40px);padding:48px 44px;animation:.6s ease-out .4s forwards authGlassIn;position:relative;box-shadow:inset 0 0 0 1px #ffffff0a,inset 0 1px #ffffff0f,inset 0 -1px #0000004d,0 8px 40px #0006,0 2px 12px #0003}@keyframes authGlassIn{0%{filter:blur(4px);opacity:0;transform:translateY(20px)scale(.97)}to{filter:blur();opacity:1;transform:translateY(0)scale(1)}}.auth-glass-card .auth-form-inner{z-index:2;width:100%;max-width:100%;position:relative}.auth-welcome{color:#faf7ef;font-family:var(--font-noto-serif-jp,"Noto Serif JP"),serif;letter-spacing:-.02em;margin-bottom:8px;font-size:clamp(26px,4vw,36px);font-weight:300;line-height:1.2}.auth-subtitle{color:#faf7ef73;letter-spacing:.01em;margin-bottom:32px;font-size:14px}.auth-field-glass{-webkit-backdrop-filter:blur(12px);background:#faf7ef0d;border:1px solid #faf7ef1a;border-radius:10px;transition:border-color .3s,background .3s,box-shadow .3s}.auth-field-glass:focus-within{background:#7a8c6e14;border-color:#7a8c6e99;box-shadow:0 0 0 3px #7a8c6e1f}.auth-field-glass input{color:#faf7ef;font-family:var(--font-inter,"Inter"),sans-serif;background:0 0;border:none;border-radius:10px;outline:none;width:100%;padding:14px 16px;font-size:14px}.auth-field-glass input::placeholder{color:#faf7ef4d}.auth-field-glass .auth-pw-wrap input{padding-right:48px}.auth-field-glass .auth-pw-toggle{color:#faf7ef59;cursor:pointer;background:0 0;border:none;align-items:center;padding:4px;transition:color .3s;display:flex;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.auth-field-glass .auth-pw-toggle:hover{color:#faf7ef}.auth-remember-row{justify-content:space-between;margin-top:4px}.auth-remember-label,.auth-remember-row{align-items:center;font-size:13px;display:flex}.auth-remember-label{color:#faf7efb3;cursor:pointer;gap:10px}.auth-remember-label input[type=checkbox]{appearance:none;cursor:pointer;background:#faf7ef08;border:1.5px solid #faf7ef26;border-radius:4px;width:16px;min-width:16px;height:16px;transition:border-color .3s,background .3s,box-shadow .3s;position:relative}.auth-remember-label input[type=checkbox]:checked{background:#7a8c6e;border-color:#7a8c6e}.auth-remember-label input[type=checkbox]:checked:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:9px;position:absolute;top:1px;left:4px;transform:rotate(45deg)}.auth-remember-label input[type=checkbox]:focus-visible{border-color:#7a8c6e;outline:none;box-shadow:0 0 0 3px #7a8c6e33}.auth-remember-row .auth-text-btn{color:#7a8c6e;font-size:13px}.auth-remember-row .auth-text-btn:hover{color:#a3b294}@keyframes authFadeSlideIn{0%{filter:blur(2px);opacity:0;transform:translateY(12px)}to{filter:blur();opacity:1;transform:translateY(0)}}.auth-animate{opacity:0;animation:.5s ease-out forwards authFadeSlideIn}.auth-delay-1{animation-delay:.5s}.auth-delay-2{animation-delay:.6s}.auth-delay-3{animation-delay:.7s}.auth-delay-4{animation-delay:.8s}.auth-delay-5{animation-delay:.9s}.auth-delay-6{animation-delay:1s}.auth-delay-7{animation-delay:1.1s}.auth-delay-8{animation-delay:1.2s}@media (max-width:480px){.auth-glass-card{border-radius:16px;padding:36px 24px}.auth-fullscreen>.auth-back-home{top:16px;left:20px}}
