:root{color-scheme:light;--paper:#f5f1e5;--ink:#3f4d3d;--muted:#7b8473;--sage:#667c60;--line:#dcdcc9;--serif:"Songti SC","Noto Serif SC","STSong",serif;--sans:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}
*{box-sizing:border-box}body{margin:0;min-height:100svh;display:flex;flex-direction:column;color:var(--ink);background:radial-gradient(ellipse at 8% 55%,#e7ecdb80,transparent 48%),var(--paper);font:14px var(--sans)}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible{outline:2px solid #a77e52;outline-offset:5px}.login-header{height:100px;padding:0 clamp(24px,5vw,76px);display:flex;align-items:center;justify-content:space-between;flex:none}.brand{display:flex;align-items:center;gap:11px;text-decoration:none}.brand strong{font:600 22px var(--serif);letter-spacing:4px;display:block}.brand small{display:block;font-size:8px;letter-spacing:2.3px;color:#8b917e;margin-top:5px}.header-note{font:12px var(--serif);letter-spacing:2px;color:#8f947f}.login-layout{width:min(1110px,calc(100% - 80px));margin:18px auto 38px;flex:1;display:grid;grid-template-columns:minmax(0,1.38fr) minmax(320px,1fr);gap:clamp(45px,7vw,105px);align-items:center}.welcome{min-width:0}.eyebrow{font:9px var(--sans);letter-spacing:2.5px;color:#9a9479}.welcome h1{font:500 clamp(26px,3.1vw,39px)/1.45 var(--serif);letter-spacing:2px;margin:15px 0 11px}.welcome-copy>p{font:12px/1.9 var(--serif);letter-spacing:.8px;color:#858d77;margin:0}.scene-frame{position:relative;margin:26px 0 0;padding:7px;border:1px solid #cbd3ba;background:#edf0df;box-shadow:8px 9px 0 #dfe5d056}.scene-frame canvas{display:block;width:100%;height:auto;image-rendering:pixelated;background:#dfe7d0}.scene-corner{position:absolute;width:16px;height:16px;pointer-events:none}.top-left{left:-3px;top:-3px;border-top:2px solid #9ba784;border-left:2px solid #9ba784}.bottom-right{right:-3px;bottom:-3px;border-right:2px solid #9ba784;border-bottom:2px solid #9ba784}.scene-note{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font:10px/1.9 var(--serif);color:#869074;letter-spacing:.5px;margin:19px 0 0}.scene-note>span:first-child{font-size:17px;color:#b5a373}.scene-line{width:29px;height:1px;background:#c7ceb4}.login-card{padding:32px 0 28px;max-width:380px;width:100%;margin:auto}.login-card>h2{font:500 30px/1.4 var(--serif);letter-spacing:1.4px;margin:16px 0 9px}.login-intro{font-size:12px;line-height:1.9;color:var(--muted);margin:0 0 31px}.field{margin-bottom:21px}.field label{display:block;font-size:12px;letter-spacing:1px;color:#68765d;margin-bottom:9px}.field input{width:100%;min-width:0;border:1px solid #d4dac7;background:#fcfbf3;border-radius:5px;height:49px;padding:12px 14px;color:#3d4e3d;outline:none;transition:border-color .15s,box-shadow .15s}.field input::placeholder{color:#a1a68f;font-size:12px}.field input:focus{border-color:#8c9e77;box-shadow:0 0 0 3px #b1c49830}.field input[aria-invalid=true]{border-color:#b98a76}.field input:disabled{color:#76816b;background:#eeeede}.password-field{display:flex;position:relative}.password-field input{padding-right:64px}.password-field button{position:absolute;right:4px;top:4px;height:41px;min-width:53px;border:0;border-radius:3px;background:transparent;font-size:11px;color:#7d8d6d;letter-spacing:.5px}.password-field button:hover{background:#edf0e0}.password-field button:focus-visible{outline-offset:-3px}.primary{width:100%;height:49px;margin-top:4px;padding:0 17px;border:1px solid #5f7759;border-radius:5px;background:#6b805f;color:#fff9e8;display:flex;align-items:center;justify-content:space-between;box-shadow:0 3px 0 #526b4b;font-size:13px;letter-spacing:2px;transition:background .15s,transform .15s}.primary:hover{background:#5f7755}.primary:active{transform:translateY(1px);box-shadow:0 2px 0 #526b4b}.primary:disabled{cursor:default;background:#839277;border-color:#7b8c6e;box-shadow:0 3px 0 #708365;color:#f1f2df}.primary[aria-busy=true] .door-arrow{opacity:.45}.door-arrow{font-size:20px;line-height:1}.login-status{min-height:37px;font-size:11px;line-height:1.8;margin:13px 0 9px;color:#7a886b;overflow-wrap:anywhere}.login-status[data-tone=error]{color:#9e6252}.login-status[data-tone=wait]{color:#9a7a4e}.session-note{display:flex;align-items:flex-start;gap:8px;border-top:1px solid var(--line);padding-top:17px;margin:0;color:#8c957f;font:10px/1.9 var(--sans)}.session-note svg{margin-top:2px;flex:none;color:#95a085}.session-break{display:none}.login-footer{padding:20px clamp(24px,5vw,76px) 24px;display:flex;justify-content:space-between;gap:20px;color:#9a9d89;font:10px/1.9 var(--serif);letter-spacing:.5px}.noscript-note{font-size:12px;line-height:1.8;color:#9e6252}
@media(min-width:1400px){.login-layout{margin-top:40px;margin-bottom:55px}}@media(max-width:850px){.login-layout{width:calc(100% - 48px);gap:35px;grid-template-columns:minmax(0,1fr) minmax(280px,1fr)}.welcome h1{font-size:28px;letter-spacing:1px}.scene-note{gap:6px}.scene-line{width:17px}.login-footer>span:last-child{display:none}.login-header{height:85px;padding:0 27px}}
@media(max-width:650px){.login-header{height:70px;padding:0 23px}.brand strong{font-size:20px;letter-spacing:3px}.brand small{font-size:7px;letter-spacing:2px}.brand svg{width:24px;height:29px}.header-note{font-size:10px;letter-spacing:1px}.login-layout{display:block;width:calc(100% - 46px);max-width:410px;margin:15px auto 18px}.welcome-copy .eyebrow{font-size:7px;letter-spacing:1.7px}.welcome h1{font-size:26px;margin:10px 0 7px;letter-spacing:1.5px}.welcome-copy>p{font-size:10px}.scene-frame{margin-top:18px;padding:5px}.scene-frame canvas{width:100%;max-height:190px;object-fit:contain;object-position:center}.scene-note{margin-top:12px;font-size:9px;gap:7px;letter-spacing:0}.scene-note>span:first-child{font-size:14px}.scene-line{width:17px}.login-card{padding:30px 0 0;max-width:none}.login-card>.eyebrow{font-size:7px;letter-spacing:2px}.login-card>h2{font-size:25px;margin:10px 0 7px}.login-intro{font-size:11px;margin-bottom:23px}.field{margin-bottom:18px}.field input{height:49px;font-size:16px}.field input::placeholder{font-size:12px}.primary{height:49px;font-size:13px}.login-status{min-height:30px;margin-top:13px;font-size:11px}.session-note{padding-top:13px;font-size:10px}.login-footer{padding:12px 23px 23px;font-size:9px;justify-content:center;text-align:center}}
@media(max-width:650px) and (max-height:720px){.welcome-copy>p{display:none}.welcome h1{font-size:23px;margin-bottom:0}.scene-frame{margin-top:12px}.scene-frame canvas{max-height:130px;object-position:center}.scene-note{margin-top:8px}.scene-note>span:last-child,.scene-line{display:none}.login-card{padding-top:21px}.login-intro{margin-bottom:17px}.login-card>.eyebrow{display:none}.login-card>h2{font-size:23px;margin:0 0 6px}.field{margin-bottom:15px}.login-header{height:61px}.login-layout{margin-top:8px}.login-footer{padding-top:5px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
