*{box-sizing:border-box}body{margin:0;background:#f5f5f5;color:#1c1c1c;font-family:Arial,'Noto Sans JP',sans-serif}a{color:inherit}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}.auth-shell{min-height:100svh;display:grid;grid-template-columns:1fr 1fr}.auth-story{padding:52px 11%;background:#171717;color:#fff;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-story:after{content:'';width:320px;height:600px;background:#ba2029;opacity:.12;position:absolute;right:-200px;top:180px;transform:rotate(25deg);pointer-events:none}.brand{text-decoration:none;font-weight:900;font-size:27px;letter-spacing:-1.5px;display:block;line-height:1}.brand span{color:#d22e38}.brand small{display:block;font-size:9px;font-weight:600;letter-spacing:3px;margin-top:10px}.eyebrow{color:#c52230;font-size:10px;letter-spacing:3px;font-weight:800}.auth-story h1{font-size:clamp(32px,4vw,57px);line-height:1.5;letter-spacing:-1.8px;margin:24px 0}.auth-story p:not(.eyebrow){color:#bdbdbd;font-size:12px;line-height:2.2}.story-foot{font-size:9px!important;letter-spacing:1.8px}.auth-panel{display:grid;place-items:center;padding:56px 40px}.auth-card{max-width:410px;width:100%}.auth-card h2,.account-card h1{font-size:27px;margin:15px 0 20px;letter-spacing:-.7px}.intro{font-size:13px;line-height:1.9;color:#6a6a6a;margin-bottom:30px}label{display:block;font-size:12px;font-weight:700;margin:23px 0 10px}input{display:block;width:100%;min-height:50px;background:#fff;border:1px solid #d6d6d6;border-radius:6px;padding:13px 14px;font-size:16px;outline:none}input:focus{border-color:#bd2530;box-shadow:0 0 0 3px #bd253018}input:user-invalid{border-color:#bd2530}.password-wrap{position:relative}.password-wrap input{padding-right:65px}.reveal{position:absolute;right:8px;top:6px;height:38px;border:0;background:none;font-size:11px;color:#666;padding:0 10px}.primary{width:100%;padding:17px 20px;background:#bd2530;border:0;border-radius:6px;color:white;font-size:13px;font-weight:700;margin-top:25px;display:flex;justify-content:space-between;gap:10px}.primary:hover{background:#a51e29}.help{border-top:1px solid #ddd;margin-top:34px;padding-top:24px;font-size:11px;line-height:1.9;color:#777}.help strong{font-size:12px;color:#444}.help p{margin:8px 0 20px}summary{cursor:pointer;color:#555}.admin-link{display:inline-block;font-size:10px;color:#8a8a8a;margin-top:26px;text-underline-offset:4px}#error{background:#fff0f0;color:#a41b2a;padding:12px;font-size:12px;line-height:1.8;border-radius:5px;margin-top:18px}.account-shell{max-width:520px;margin:auto;padding:38px 24px 60px}.account-card{background:white;padding:30px;margin-top:40px;border-radius:10px;max-width:none;box-shadow:0 8px 36px #00000006}.hint{font-size:10px;color:#777;line-height:1.8}.account-links{display:flex;gap:20px;justify-content:space-between;margin-top:25px;font-size:11px;color:#666}.text-button{border:0;background:none;color:inherit;padding:0;font-size:11px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #d22e38;outline-offset:4px}@media(max-width:700px){.auth-shell{display:block}.auth-story{padding:25px 26px 30px;min-height:auto}.brand{font-size:24px}.auth-story h1{font-size:31px;margin:20px 0 10px;line-height:1.4}.auth-story h1 br{display:none}.auth-story .eyebrow{margin-top:30px}.auth-story p:not(.eyebrow){font-size:11px}.story-foot{display:none}.auth-panel{padding:35px 26px 45px}.auth-card{max-width:430px}.auth-card h2{font-size:24px}.intro{margin-bottom:20px}.help{margin-top:26px}.account-card{padding:25px 20px;margin-top:30px}.account-card h1{font-size:22px}}
