:root{--auth-ink:#211f1b;--auth-muted:#777066;--auth-green:#283e2c;--auth-paper:#f5efe4;--auth-rust:#b66c4b}
.global-auth-gate{position:fixed;inset:0;z-index:1000;background:var(--auth-paper)}
.global-auth-gate[hidden]{display:none}
.auth-screen,.auth-screen *,.auth-screen *::before,.auth-screen *::after{box-sizing:border-box}
.auth-screen{position:relative;isolation:isolate;width:100%;height:100vh;height:100dvh;min-height:640px;overflow:hidden;background:#eee5d7 url('/auth-editorial-stage.png?v=1') center top/cover no-repeat;color:var(--auth-ink);font-family:'Noto Sans SC','Microsoft YaHei',sans-serif}
.auth-screen::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#f8f3e514 0%,#f8f3e500 65%,#f8f3e31a 100%)}
.auth-story{position:absolute;inset:0;z-index:1;pointer-events:none}
.auth-brand{position:absolute;left:4.2%;top:5.2%;display:flex;flex-direction:column;gap:5px;color:#243a29;text-decoration:none;pointer-events:auto}
.auth-brand-copy{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.auth-brand-copy>b{font:500 clamp(25px,2vw,36px)/1 'DM Sans',sans-serif;letter-spacing:.2em;white-space:nowrap}
.auth-brand-copy>b i{font-style:normal}
.auth-brand-copy>small{font:500 clamp(13px,.95vw,17px)/1.3 'Noto Sans SC',sans-serif;letter-spacing:.3em}
.auth-story-copy{position:absolute;left:4.2%;top:14.7%;width:min(33vw,570px)}
.auth-mark{display:block;width:52px;height:3px;margin-bottom:24px;background:var(--auth-rust)}
.auth-story-copy h2{margin:0;color:#1e1c19;font:600 clamp(36px,3.25vw,60px)/1.22 'Noto Serif SC','Songti SC',serif;letter-spacing:.055em}
.auth-story-copy h2 br{display:block}
.auth-story-copy p{margin:20px 0 0;color:#736d62;font:400 clamp(12px,.9vw,16px)/1.8 'Noto Sans SC',sans-serif;letter-spacing:.19em;white-space:nowrap}
.auth-projects{position:absolute;inset:0;margin:0;padding:0;list-style:none}
.auth-projects article{position:absolute;display:flex;flex-direction:column;align-items:flex-start;gap:9px;width:16.8%;color:#28231e}
.auth-projects article:nth-child(1){left:5.4%;top:36.5%;width:15.7%}
.auth-projects article:nth-child(2){left:39.7%;top:16.5%;width:14.8%}
.auth-projects article:nth-child(3){left:24.3%;top:45.3%;width:12.8%}
.auth-projects article:nth-child(4){left:39.7%;top:50.5%;width:13.2%}
.auth-projects article:nth-child(5){left:54.2%;top:48.3%;width:12.5%}
.auth-projects article>i{font:400 clamp(12px,.96vw,17px)/1 'Noto Serif SC','Songti SC',serif;letter-spacing:.08em;font-style:normal}
.auth-projects article>b{font:500 clamp(15px,1.25vw,22px)/1.32 'Noto Serif SC','Songti SC',serif;letter-spacing:.01em;white-space:nowrap}
.auth-projects article>small{color:#686159;font:400 clamp(10px,.77vw,14px)/1.55 'Noto Sans SC',sans-serif;letter-spacing:.12em;white-space:nowrap}
.auth-login-wrap{position:absolute;z-index:2;right:3.5%;top:50%;transform:translateY(-50%);width:min(25vw,440px);min-width:320px;padding:0;}
.auth-card{padding:clamp(30px,3vw,52px) clamp(26px,2.7vw,46px) clamp(28px,2.4vw,40px);border:1px solid #ece6dc;border-radius:10px;background:#fffefa;box-shadow:0 18px 54px #30251b18}
.auth-card-heading{margin:0 0 26px}
.auth-heading-brand{display:none}
.auth-heading-copy{display:flex;flex-direction:column;align-items:flex-start;gap:9px}
.auth-heading-copy h1{margin:0;color:#1f1d1a;font:600 clamp(28px,2.1vw,38px)/1.2 'Noto Serif SC','Songti SC',serif;letter-spacing:.035em}
.auth-heading-copy>p{margin:0;color:#787168;font:400 clamp(13px,.92vw,16px)/1.7 'Noto Sans SC',sans-serif;letter-spacing:.08em}
.auth-error{margin:0 0 18px;padding:11px 13px;border:1px solid #edd9d1;border-radius:6px;background:#fff7f4;color:#9d5748;font-size:13px;line-height:1.55}
.auth-waiting{border-color:#e4e1d8;background:#faf8f2;color:#777066}
.auth-card form{display:grid;gap:0}
.auth-card label{margin:16px 0 8px;color:#35332e;font:500 14px/1.4 'Noto Sans SC',sans-serif}
.auth-input-wrap{display:flex;align-items:center;gap:12px;height:50px;padding:0 13px;border:1px solid #d7d6d3;border-radius:7px;background:#fff;color:#69706d;transition:border-color .16s,box-shadow .16s}
.auth-input-wrap input,.auth-input-wrap input:focus{background-color:transparent!important;color:#282a26!important;-webkit-text-fill-color:#282a26!important;box-shadow:none}
.auth-input-wrap input:-webkit-autofill,.auth-input-wrap input:-webkit-autofill:hover,.auth-input-wrap input:-webkit-autofill:focus,.auth-input-wrap input:-webkit-autofill:active{border-radius:0;-webkit-text-fill-color:#282a26!important;-webkit-box-shadow:0 0 0 1000px #fffefa inset!important;box-shadow:0 0 0 1000px #fffefa inset!important;transition:background-color 99999s ease-out 0s}
.auth-input-wrap:focus-within{border-color:#526c52;box-shadow:0 0 0 3px #526c521b}
.auth-input-wrap>svg{width:18px;height:18px;flex:none}
.auth-card input{width:100%;min-width:0;height:100%;padding:0;border:0;outline:0;background:transparent;color:#282a26;font:400 14px 'Noto Sans SC',sans-serif}
.auth-card input::placeholder{color:#aaa8a2}
.auth-input-wrap .auth-eye{display:grid;place-items:center;flex:none;width:30px;height:32px;margin:0;padding:0;border:0;background:transparent;color:#6c716c;cursor:pointer}
.auth-input-wrap .auth-eye svg{width:19px;height:19px}
.auth-card form button[type=submit]{display:flex;align-items:center;justify-content:center;gap:12px;height:52px;margin-top:25px;border:0;border-radius:7px;background:var(--auth-green);color:#fff;font:500 15px 'Noto Sans SC',sans-serif;letter-spacing:.13em;cursor:pointer;transition:background .15s,transform .15s}
.auth-card form button[type=submit]:hover{background:#1e3322;transform:translateY(-1px)}
.auth-card form button[type=submit]:disabled{opacity:.65;cursor:wait;transform:none}
.auth-card form button[type=submit] span{font-size:20px;line-height:1}
.auth-security-note{display:none}
.auth-login-foot{display:none;margin:20px 1px 0;color:#736d62;font:400 12px/1.9 'Noto Sans SC',sans-serif;letter-spacing:.16em}
.auth-login-foot small{display:block;margin-top:12px;padding-left:13px;position:relative;color:#908779;font:500 9px/1.2 'DM Sans',sans-serif;letter-spacing:.25em}
.auth-login-foot small::before{content:"";position:absolute;left:0;top:50%;width:6px;height:1px;background:var(--auth-rust)}
.auth-retry{display:block;margin:12px auto 0;padding:5px;border:0;background:transparent;color:var(--auth-green);cursor:pointer}
@media(max-width:1200px) and (min-width:901px){.auth-story-copy{width:34vw}.auth-login-wrap{right:2.5%;width:32vw;min-width:350px}.auth-projects article:nth-child(2){left:40%}.auth-projects article:nth-child(4){left:40%}.auth-projects article:nth-child(5){left:54%}}
@media(max-width:900px){
 .auth-screen{height:auto;min-height:100dvh;overflow:auto;padding:28px 22px 36px;background-position:42% top;background-size:auto 640px}
 .auth-screen::before{background:linear-gradient(180deg,#f7f2e9a8 0%,#f7f2e9b8 420px,#f7f2e9 640px)}
 .auth-story{position:relative;inset:auto;min-height:470px;pointer-events:auto}
 .auth-brand{position:relative;left:auto;top:auto;width:max-content}
 .auth-story-copy{left:0;top:100px;width:min(80vw,520px)}
 .auth-mark{margin-bottom:15px}
 .auth-story-copy h2{font-size:clamp(35px,6vw,50px)}
 .auth-story-copy p{margin-top:13px;white-space:normal}
 .auth-projects{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:225px}
 .auth-projects article,.auth-projects article:nth-child(n){position:relative;left:auto;top:auto;width:auto;min-height:76px;padding:11px 13px;border:1px solid #d9d1c5;border-radius:5px;background:#fffdf8e8;box-shadow:0 3px 12px #392b1a0d}
 .auth-projects article>i{font-size:13px}.auth-projects article>b{font-size:17px}.auth-projects article>small{font-size:12px}
 .auth-login-wrap{position:relative;top:auto;right:auto;transform:none;width:min(100%,480px);min-width:0;margin:6px auto 0}
 .auth-card{padding:28px 24px 25px}
 .auth-card-heading{margin-bottom:19px}
 .auth-heading-copy h1{font-size:29px}
 .auth-login-foot{margin-top:15px}
}
@media(max-width:520px){.auth-screen{padding:24px 16px 28px}.auth-story{min-height:430px}.auth-story-copy{top:91px}.auth-projects{margin-top:218px;gap:7px}.auth-projects article,.auth-projects article:nth-child(n){min-height:70px;padding:9px}.auth-projects article>b{font-size:15px}.auth-projects article>small{font-size:10px}.auth-card{padding:25px 20px 22px}.auth-card label{margin-top:13px}.auth-input-wrap{height:47px}.auth-card form button[type=submit]{height:49px;margin-top:21px}}
/* The generated editorial artwork already contains its typography; keep HTML text hidden to prevent double-rendering. */
.auth-story{display:none}
@media(min-width:901px) and (max-aspect-ratio:3/2){.auth-screen{background-size:100% 100%}.auth-login-wrap{right:3%;width:24vw;min-width:270px}}
@media(min-width:901px) and (max-height:700px){.auth-screen{min-height:100dvh;background-position:center top}.auth-login-wrap{top:50%}}
