.login-page{margin:0;background:#fafafa;color:#1e1e1e;font-family:DieGrotesk,Arial,"Microsoft YaHei",sans-serif;font-size:16px}
.login-page *{box-sizing:border-box}
.back-home{display:flex;width:fit-content;align-items:center;background:#ebebeb;border-radius:18px;min-height:54px;padding:14px 22px;margin-bottom:28px}
.back-home{gap:18px;color:inherit;text-decoration:none;font-size:15px;transition:background .2s}
.back-home:hover{background:#e0e0e0}
.login-layout{width:86.66%;max-width:1440px;margin:36px auto 0;display:grid;grid-template-columns:1.1fr 1fr;min-height:650px;min-height:min(710px,calc(100svh - 190px))}
.login-story{position:relative;isolation:isolate;overflow:hidden;border-radius:28px;background:radial-gradient(ellipse at 10% 95%,#c9d6f8,transparent 55%),radial-gradient(ellipse at 95% 15%,#ffe3c9,transparent 55%),#efece8;display:flex;flex-direction:column;justify-content:space-between;padding:42px}
.story-heading{position:relative;z-index:1}.eyebrow{font-size:10px;letter-spacing:1.7px;color:#696969}
.story-heading h1{font-size:clamp(38px,4.3vw,68px);font-weight:400;line-height:1.04;letter-spacing:-2.7px;margin:24px 0 18px}
.story-heading p{font-size:14px;color:#626262;line-height:1.7}
.login-artwork{position:absolute;z-index:-1;width:125%;max-width:none;height:78%;object-fit:cover;left:-12.5%;top:27%;mix-blend-mode:multiply;mask-image:linear-gradient(transparent,#000 18%,#000 78%,transparent)}
.story-bottom{display:flex;align-items:center;justify-content:space-between;font-size:12px;margin-top:300px;color:#505050}.story-bottom>span:last-child{font-size:36px}
.login-panel{position:relative;display:flex;justify-content:center;align-items:center;padding:40px 0 24px 54px}
.login-form-wrap{width:100%;max-width:380px}.login-form-wrap h2{font-size:clamp(34px,3.4vw,50px);font-weight:400;letter-spacing:-2px;line-height:1.1;margin:21px 0 16px}
.login-description{font-size:14px;color:#777;line-height:1.7;margin:0 0 36px}
.form-field{margin-bottom:23px}.form-field label{display:block;font-size:13px;margin-bottom:10px}.form-field label span{color:#8a8a8a;margin-left:7px;font-size:12px}
.form-field input{display:block;width:100%;height:56px;border:1px solid #dfdfdf;border-radius:12px;background:#f2f2f2;padding:0 16px;font:inherit;font-size:15px;color:#1e1e1e;transition:border-color .2s,background .2s}
.form-field input:focus{outline:2px solid #969bce;outline-offset:2px;background:#fff}.form-field input::placeholder{color:#969696}
.password-field{position:relative}.password-field input{padding-right:70px}.password-toggle{position:absolute;right:9px;top:8px;height:40px;padding:0 10px;border:0;background:transparent;color:#666;font:inherit;font-size:12px;cursor:pointer}
.login-submit{width:100%;height:56px;border:0;border-radius:12px;background:#1e1e1e;color:white;display:flex;align-items:center;justify-content:space-between;padding:0 20px;font:inherit;cursor:pointer;transition:box-shadow .25s,background .25s;margin-top:30px}
.login-submit:hover{background:#303030;box-shadow:0 3px 9px #a5c7df,0 5px 16px #dfd3b3}.login-submit>span:last-child{font-size:24px}
.register-button{display:flex;align-items:center;justify-content:space-between;width:100%;height:56px;margin-top:12px;padding:0 20px;border:1px solid #d8d8d8;border-radius:12px;background:#f2f2f2;color:#1e1e1e;text-decoration:none;font:inherit;transition:background .2s,border-color .2s}
.register-button:hover{background:#e8e8e8;border-color:#bcbcbc}.register-button>span:last-child{font-size:24px}
.form-status{font-size:13px;line-height:1.7;color:#725b38;margin:14px 0 0;min-height:22px}.no-script{font-size:13px;line-height:1.7}
.form-footer{border-top:1px solid #e5e5e5;margin-top:28px;padding-top:24px;display:flex;align-items:center;gap:14px}.footer-mark{font-size:30px;color:#8e93aa}.form-footer p{font-size:12px;line-height:1.8;color:#707070}.form-footer p span{color:#999}
.login-footer{width:86.66%;margin:25px auto;display:flex;justify-content:space-between;color:#929292;font-size:11px}
@media(min-width:1600px){.login-header,.login-footer{max-width:1440px}}
@media(max-width:900px){.login-layout{grid-template-columns:1fr 1fr}.login-story{padding:30px}.login-panel{padding-left:30px}.story-heading h1{font-size:43px}}
@media(max-width:767px){.login-header{top:auto!important;left:auto!important;width:calc(100% - 40px)!important;margin-top:18px}.login-brand,.back-home{min-height:54px;padding:10px 14px;border-radius:14px}.back-home{font-size:12px;gap:10px}.login-layout{width:calc(100% - 40px);margin-top:32px;display:flex;flex-direction:column;min-height:0}.login-panel{order:-1;padding:12px 12px 38px}.login-form-wrap{max-width:420px}.login-form-wrap h2{font-size:42px}.login-story{min-height:300px;padding:26px}.story-heading h1{font-size:38px;letter-spacing:-1.5px;margin-top:18px}.story-heading p{font-size:12px;max-width:160px}.login-artwork{width:90%;height:100%;left:35%;top:10%}.story-bottom{margin-top:24px}.story-bottom>span:last-child{font-size:28px}.login-footer{width:calc(100% - 40px)}}
@media(max-width:767px){.login-panel{padding-top:12px}.login-panel .back-home{margin-bottom:20px}}
.settings-page{min-height:100svh;background:#f4f4f1}.settings-header{width:min(1080px,calc(100% - 40px));margin:0 auto;padding:28px 0;display:flex;justify-content:space-between;position:relative!important}.settings-header a{color:#666;text-decoration:none;font-size:13px}.settings-shell{width:min(1080px,calc(100% - 40px));margin:28px auto 70px;display:grid;grid-template-columns:280px minmax(0,1fr);gap:56px}.settings-intro{position:sticky;top:30px;align-self:start}.settings-intro h1{font-size:42px;font-weight:400;letter-spacing:-2px;margin:18px 0 12px}.settings-intro>p{color:#777;line-height:1.7}.settings-user{display:flex;align-items:center;gap:14px;margin-top:34px;padding-top:26px;border-top:1px solid #ddd}.settings-user>span{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#1e1e1e;color:#fff;font-size:19px}.settings-user strong,.settings-user small{display:block;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-user small{color:#8b8b8b;font-size:11px;margin-top:6px}.settings-card{background:#fff;border:1px solid #e1e1dd;border-radius:20px;padding:30px;margin-bottom:22px}.settings-card>div:first-child{border-bottom:1px solid #ededeb;padding-bottom:22px;margin-bottom:25px}.settings-card h2{font-size:21px;font-weight:400;margin:10px 0}.settings-card>div>p{font-size:12px;color:#888;line-height:1.6;margin:0}.settings-number{font-size:10px;letter-spacing:1px;color:#777}.settings-card .login-submit{margin-top:24px}.settings-card .form-field:first-of-type{margin-top:0}@media(max-width:767px){.settings-header{padding:20px 0}.settings-shell{margin-top:15px;grid-template-columns:1fr;gap:25px}.settings-intro{position:static}.settings-intro h1{font-size:34px}.settings-user{margin-top:22px}.settings-card{padding:22px 18px;border-radius:16px}}
.auth-error,.auth-notice{padding:12px 14px;border-radius:10px;font-size:13px;line-height:1.6;margin:0 0 22px}.auth-error{background:#faeae6;color:#a04434}.auth-notice{background:#e9f2e8;color:#46694b}.account-page{min-height:100svh;display:grid;place-items:center;padding:28px 20px;background:radial-gradient(at 0 100%,#dce4f7,transparent 55%),#fafafa}.account-card{width:100%;max-width:560px;background:#fff;border:1px solid #e5e5e5;border-radius:24px;padding:38px}.account-back{display:block;color:#777;text-decoration:none;margin-bottom:40px;font-size:14px}.account-card h1{font-size:34px;font-weight:400;margin:18px 0;overflow-wrap:anywhere}.account-details{display:grid;grid-template-columns:85px minmax(0,1fr);gap:18px;font-size:14px;margin:30px 0}.account-details dt{color:#888}.account-details dd{margin:0;overflow-wrap:anywhere}.account-card .login-submit{text-decoration:none}.account-card .register-button{cursor:pointer;justify-content:center}@media(max-width:767px){.account-card{padding:26px}.account-card h1{font-size:28px}}
.settings-header a,.settings-header button{display:flex;align-items:center;background:#ebebeb;border-radius:18px;min-height:54px;padding:14px 22px;color:inherit;text-decoration:none;font-size:15px;transition:background .2s}.settings-header a:hover,.settings-header button:hover{background:#e0e0e0}.settings-header form{margin:0}.settings-header button{border:0;cursor:pointer;font-family:inherit}.settings-details{margin:0}.settings-details dd{color:#555}
.points-inline{display:inline-flex;align-items:center;gap:7px;color:#6d5bb8;background:#f0edff;border-radius:20px;padding:4px 10px;font-weight:600}.login-submit:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}
