html.cloud-pending{scrollbar-gutter:auto;overflow:hidden;background:#f4e8d5}.cloud-pending body{overflow:hidden}
.cloud-gate.auth-gate{box-sizing:border-box;display:block;padding:0;background:#f4e8d5 url(/static-assets/b2660fa22c319241f6ec-paper-landscape-v1.webp) right center/auto 100vh no-repeat;color:#30302b;font-family:"Songti SC","SimSun",serif;scrollbar-gutter:auto}
.auth-scene{position:relative;width:100%;min-height:max(100dvh,680px);margin:0}
.auth-art{position:absolute;inset:0;background:url(/static-assets/b2660fa22c319241f6ec-paper-landscape-v1.webp) center/cover no-repeat;pointer-events:none}
.auth-mobile-brand{display:none}
.auth-panel{position:absolute;left:60.6%;top:50%;transform:translateY(-50%);width:32%;max-width:520px;box-sizing:border-box;line-height:1.7;padding:0}
.auth-panel h1{font-family:"KaiTi","STKaiti","Kaiti SC","SimSun",serif;font-size:clamp(42px,4.55vw,72px);font-weight:600;letter-spacing:.06em;text-align:center;line-height:1.15;margin:0 0 49px;outline:none}
.auth-panel h1:after{content:"";display:block;width:clamp(138px,15.1vw,240px);height:18px;margin:10px auto 0;background:url(/static-assets/3046dff2c1c108392f48-auth-underline.svg) center/100% 100% no-repeat}
.auth-status:empty{display:none}.auth-status{font-size:13px;color:#756d5e;margin:0 0 16px;text-align:center}
.auth-field{display:block;font-size:15px;margin:20px 0;position:relative}.auth-field>small{color:#796f5f;margin-left:8px;font-size:12px}
.auth-field input:not([type=radio]){display:block;width:100%;height:52px;border:1px solid #978e7d;border-radius:5px;background:#fff9ef24;padding:10px 14px;font:16px system-ui,sans-serif;color:#322f29;box-sizing:border-box;margin-top:6px}
.auth-field input::placeholder{font-family:"KaiTi","STKaiti","SimSun",serif;font-size:20px;color:#736d61;opacity:1}
.auth-field input:focus{outline:2px solid #5b5e48;outline-offset:3px}
.auth-input-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.auth-input-wrap{position:relative;display:block}.auth-input-wrap>svg{position:absolute;left:17px;top:16px;width:21px;height:21px;fill:none;stroke:#696557;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.auth-credential input:not([type=radio]){padding-left:51px}.auth-password input{padding-right:60px!important}.auth-password button{position:absolute;right:2px;top:2px;bottom:2px;min-width:48px;padding:0 10px;background:transparent;border:0;color:#625d50;font:13px system-ui,sans-serif;cursor:pointer}
.auth-field small{font-size:12px;color:#736957}
.auth-primary{position:relative;isolation:isolate;display:block;width:100%;min-height:63px;border:0;border-radius:0;background:transparent;color:#fff8e7;font:28px "KaiTi","STKaiti","SimSun",serif;letter-spacing:.22em;padding:14px 20px;cursor:pointer}
.auth-primary:before{content:"";position:absolute;inset:0 -2%;z-index:-1;background:transparent url(/static-assets/44b6573fa6a656894957-auth-brush.svg) center/100% 100% no-repeat}
.auth-primary:hover:before{filter:grayscale(1) brightness(1.2)}.auth-primary:disabled{opacity:.55;cursor:wait}.auth-submit-actions{margin-top:45px}
.auth-links{display:flex;justify-content:center;gap:0;margin-top:22px}.auth-links button,.auth-text,.auth-phone{background:transparent;border:0;padding:8px 23px;color:#504d43;font:19px "KaiTi","STKaiti","SimSun",serif;cursor:pointer;min-height:40px}.auth-links button+button{position:relative}.auth-links button+button:before{content:"";position:absolute;left:0;top:13px;bottom:13px;border-left:1px solid #9c9382}
.auth-links button:hover,.auth-text:hover{text-decoration:underline;text-underline-offset:5px}.auth-phone[hidden]{display:none}.auth-hint{font-size:12px;color:#756b5a;line-height:1.8;margin:12px 0}.auth-error{color:#914b31;line-height:1.6;font-size:13px;margin:10px 0;outline:none}.auth-error:empty{display:none}.auth-steps{list-style:none;display:flex;justify-content:center;gap:22px;padding:0;margin:10px 0 22px;font-size:13px;color:#827663}.auth-steps [aria-current]{color:#382f24;border-bottom:1px solid #9a6b45}
.auth-gate button:focus-visible{outline:2px solid #5c6146;outline-offset:4px}.auth-unavailable{font-size:16px;line-height:1.9}.auth-contact-open{padding:8px 0;background:none;border:0;border-bottom:1px solid #8b806c;font:inherit;color:#4d503c;cursor:pointer}.auth-unavailable .auth-primary{margin-top:26px}
.auth-gate[data-auth-mode=register] .auth-panel h1,.auth-gate[data-auth-mode=recover] .auth-panel h1,.auth-gate[data-auth-mode=phone] .auth-panel h1{font-size:46px;margin-bottom:26px}.auth-gate[data-auth-mode=register] .auth-submit-actions{margin-top:22px}.auth-gate[data-auth-step="2"] .auth-field{margin:8px 0}.auth-gate[data-auth-step="2"] .auth-panel h1{margin-bottom:12px}.auth-gate[data-auth-step="2"] .auth-links{margin-top:8px}

.auth-avatar-row{display:flex;align-items:center;gap:14px}.auth-avatar-row>img{width:78px;height:78px;object-fit:contain}.auth-avatar-choices{display:flex;gap:9px;flex:1;border:0;padding:0;margin:0}.auth-avatar-choices legend{font-size:12px;color:#756b5a;margin-bottom:4px}.auth-avatar-choices label{position:relative;display:flex;align-items:center;gap:2px;padding:3px 6px 3px 2px;border:1px solid transparent;border-radius:3px;font-size:12px;cursor:pointer}.auth-avatar-choices label:has(:checked){border-color:#8c7d61;background:#fff9eb66}.auth-avatar-choices input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;margin:0}.auth-avatar-choices label:has(:focus-visible){outline:2px solid #605f48}.auth-avatar-choices img{object-fit:contain;width:40px;height:40px}.auth-upload{display:inline-flex;align-items:center;min-height:36px;font-size:13px;position:relative;cursor:pointer;text-decoration:underline;text-underline-offset:4px}.auth-upload input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.auth-upload:has(:focus-visible){outline:2px solid #605f48}.auth-gender{display:flex;gap:18px;border:0;padding:0;margin:10px 0 18px}.auth-gender legend{font-size:14px;margin-bottom:6px}.auth-gender label{font-size:14px;display:flex;align-items:center;gap:5px;min-height:32px}.auth-gender input{accent-color:#5c6146}.auth-small-seal{display:inline-block;color:#9c5839;border:1px solid #b48062;padding:3px 8px;font-size:13px;margin:12px 0}.auth-unavailable{font-size:16px;line-height:1.9}.auth-unavailable .auth-primary{margin-top:26px}.auth-gate button:focus-visible{outline:2px solid #5c6146;outline-offset:4px}.auth-gate[data-auth-mode=register] .auth-panel{top:50%}.auth-gate[data-auth-step="2"] .auth-status{margin-bottom:10px}.auth-gate[data-auth-step="2"] .auth-phone{display:none}

.avatar-crop-dialog{width:min(430px,calc(100vw - 28px));max-height:calc(100dvh - 40px)!important;overflow:auto;padding:24px;border:1px solid #a79677;border-radius:3px;background:#f2e9d8;color:#342f27;box-sizing:border-box}.avatar-crop-dialog::backdrop{background:#29261fd0}.avatar-crop-dialog header,.avatar-crop-dialog footer{display:flex;justify-content:space-between;align-items:center;gap:12px}.avatar-crop-dialog h2{font-size:24px;margin:0}.avatar-crop-dialog header button{background:transparent;border:0;font-size:28px;min-width:40px;min-height:40px}.avatar-crop-dialog>p{font-size:13px}.avatar-crop-preview{width:min(100%,256px);aspect-ratio:1;margin:16px auto;border-radius:50%;overflow:hidden;background:#e0d5c0;outline:1px solid #a39479}.avatar-crop-preview canvas{width:100%;height:100%;display:block}.avatar-crop-dialog>label{display:grid;grid-template-columns:70px 1fr;gap:10px;align-items:center;font-size:14px;margin:8px 0}.avatar-crop-dialog input{width:100%;accent-color:#596044;min-height:30px}.avatar-crop-dialog footer{margin-top:18px}.avatar-crop-dialog [data-crop-error]{color:#914b31}.avatar-crop-dialog [data-crop-error]:empty{display:none}

/* A nearly circular frame keeps every uploaded portrait in the same proportions. */
.inkstone-account{height:calc(var(--account-stone-width) * .365058);bottom:calc(20px + var(--account-stone-width) * .3671515);border-radius:49.5% 50.5% 50% 49.8%;background:#d5d0c1;isolation:isolate}
.inkstone-account:hover{background:#d5d0c1}
.inkstone-account .custom-local-avatar{inset:0;width:100%;height:100%;object-fit:cover;mask-image:none;-webkit-mask-image:none;border-radius:50%;clip-path:circle(49.5%)}
.inkstone-account .ink-pool-avatar{border-radius:50%;overflow:hidden;clip-path:circle(49.5%)}
.inkstone-account:after{content:'';position:absolute;inset:-1px;border:2px solid #29292399;border-top-color:#514d3e66;border-right-color:#211e18bb;border-radius:49.5% 50.5% 49.8% 50%;box-shadow:0 0 1px 1px #4642374d;pointer-events:none;z-index:1}
.identity-picture>img,.auth-avatar-row>img,.auth-avatar-choices img{border-radius:50%;object-fit:cover}
.avatar-crop-preview canvas{cursor:grab;touch-action:none;user-select:none}.avatar-crop-preview canvas:active{cursor:grabbing}
@media(max-width:900px){.inkstone-account{width:68px;height:68px;bottom:auto}}

.auth-support a{color:#5e573e;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.auth-support small{display:block;font-size:12px;line-height:1.8;color:#756b5a;margin-top:10px}

.identity-preferences{display:flex;align-items:end;gap:24px;flex-wrap:wrap;margin:16px 0}.identity-preferences .field{min-width:120px;margin:0}.identity-preferences select{min-height:40px;background:#fff8ed;border:1px solid #a49374;font:inherit;padding:5px 10px}.identity-preferences .auth-avatar-choices{flex:0 1 auto;gap:12px}.identity-preferences .auth-avatar-choices label{font-size:14px}



.auth-submit-actions{display:flex;gap:16px;align-items:center}.auth-submit-actions .auth-primary{flex:1}.auth-submit-actions [data-auth-previous]{order:-1;flex:none;min-width:44px}

/* Approved paper template: generous vertical rhythm and fine, soft field outlines. */
.auth-credential .auth-input-wrap{isolation:isolate}
.auth-credential .auth-input-wrap:before{content:"";position:absolute;inset:0;border:1px solid #877d69;border-radius:10px 8px 11px 9px / 9px 11px 8px 10px;box-shadow:0 0 .5px #877d6955;pointer-events:none;z-index:1}
.auth-credential input:not([type=radio]){height:62px;margin-top:0;border:0;border-radius:10px;background:transparent;padding-left:78px;font-size:20px;font-family:"KaiTi","STKaiti","SimSun",serif}
.auth-credential input::placeholder{font-size:24px;color:#716b5e}
.auth-credential .auth-input-wrap>svg{left:27px;top:18px;width:26px;height:26px;stroke:#716b5e;stroke-width:1.55}
.auth-credential input:autofill{box-shadow:inset 0 0 0 100px #efe3ce;color:#322f29}
.auth-credential input:-webkit-autofill{-webkit-box-shadow:inset 0 0 0 100px #efe3ce;-webkit-text-fill-color:#322f29;caret-color:#322f29}
.auth-password button{right:12px;top:5px;bottom:5px;width:44px;min-width:44px;display:grid;place-items:center;padding:0}
.auth-password button svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.auth-password button[aria-pressed=true] .auth-eye-slash{display:none}
.auth-gate[data-auth-mode=login] .auth-credential{margin:0}
.auth-gate[data-auth-mode=login] .auth-credential+.auth-credential{margin-top:31px}
.auth-gate[data-auth-mode=login] .auth-submit-actions{margin-top:60px}
.auth-gate[data-auth-mode=login] .auth-primary{min-height:78px;font-size:36px;letter-spacing:.28em;text-indent:.28em;padding:14px 20px}
.auth-gate[data-auth-mode=login] .auth-links{margin-top:28px}
.auth-gate[data-auth-mode=login] .auth-links button{font-size:24px;padding:8px 36px;white-space:nowrap}
.auth-links button+button:before{top:17px;bottom:17px}
@media(max-width:900px){.cloud-gate.auth-gate{background-size:auto 100dvh}.auth-scene{min-height:100dvh;padding:24px 26px 38px;box-sizing:border-box}.auth-art{display:none}.auth-mobile-brand{display:block;width:min(430px,100%);height:190px;margin:0 auto 15px}.auth-mobile-brand svg{display:block;width:100%;height:100%;overflow:hidden}.auth-panel,.auth-gate[data-auth-mode=register] .auth-panel{position:static;transform:none;width:min(430px,100%);max-width:none;margin:0 auto;padding:0}.auth-panel h1{font-size:36px;margin:0 0 24px}.auth-panel h1:after{width:90px;height:5px;margin-top:9px}.auth-field{margin:18px 0}.auth-submit-actions{margin-top:28px}.auth-primary{min-height:58px;font-size:25px}.auth-links{margin-top:14px}.auth-links button{font-size:18px;padding:8px 22px}.auth-gate[data-auth-mode=register] .auth-panel h1,.auth-gate[data-auth-mode=recover] .auth-panel h1,.auth-gate[data-auth-mode=phone] .auth-panel h1{font-size:34px;margin-bottom:18px}.auth-gate[data-auth-mode=register] .auth-mobile-brand{height:125px;margin-bottom:8px}.auth-avatar-row{gap:10px}.auth-avatar-row>img{width:64px;height:64px}.auth-avatar-choices{gap:4px}.auth-avatar-choices img{width:32px;height:32px}.auth-gender{gap:14px}}
@media(max-width:360px){.auth-scene{padding-inline:20px}.auth-links button{padding-inline:17px}.auth-avatar-choices label{padding-right:2px}.auth-avatar-row{gap:6px}}
@media(prefers-reduced-motion:reduce){.auth-gate *,.avatar-crop-dialog *{scroll-behavior:auto;animation:none;transition:none}}

/* User-provided filing, awaiting domain verification before deployment. */
.auth-registration{position:absolute;left:0;right:0;bottom:14px;text-align:center;padding:0 20px;font:12px/1.6 system-ui,sans-serif;color:#625c50}
.auth-registration a,.site-registration a{color:inherit;text-decoration:none;display:inline-block;padding:6px 8px}
.auth-registration a:hover,.site-registration a:hover{text-decoration:underline;text-underline-offset:3px}
.auth-registration a:focus-visible,.site-registration a:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.site-registration{text-align:center;margin:18px 16px;padding:6px;font:12px/1.6 system-ui,sans-serif;color:#f7eddb;text-shadow:0 1px 2px #302016}
.cloud-pending .site-registration{display:none}
@media(max-width:900px){.auth-registration{position:static;margin-top:24px;padding:0}.auth-scene{padding-bottom:18px}}

@media(max-width:900px){
 .auth-panel h1{font-weight:600;letter-spacing:.06em;line-height:1.25}
 .auth-panel h1:after{width:140px;height:13px;margin-top:9px}
 .auth-credential input:not([type=radio]){height:56px;padding-left:59px;font-size:18px}
 .auth-credential input::placeholder{font-size:21px}
 .auth-credential .auth-input-wrap>svg{left:20px;top:16px;width:23px;height:23px}
 .auth-password button{right:8px}
 .auth-gate[data-auth-mode=login] .auth-credential+.auth-credential{margin-top:24px}
 .auth-gate[data-auth-mode=login] .auth-submit-actions{margin-top:36px}
 .auth-gate[data-auth-mode=login] .auth-primary{min-height:68px;font-size:30px}
 .auth-gate[data-auth-mode=login] .auth-links{margin-top:20px}
 .auth-gate[data-auth-mode=login] .auth-links button{font-size:21px;padding:8px 24px}
 .auth-links button+button:before{top:15px;bottom:15px}
}
@media(max-width:360px){.auth-gate[data-auth-mode=login] .auth-links button{font-size:19px;padding-inline:20px}}

/* Cropped from the approved template: original brush and lettering, accessible label retained. */
.auth-gate[data-auth-mode=login] .auth-primary{color:transparent}
.auth-gate[data-auth-mode=login] .auth-primary:before{background-image:url(/static-assets/c8813c1a65217ee23b9f-auth-button-template-original.webp);background-size:100% 100%;filter:none}
.auth-gate[data-auth-mode=login] .auth-primary:hover:before{filter:brightness(1.08)}

/* Login does not fetch the authenticated desktop background. */
html.cloud-pending{background:#f4e8d5!important}.cloud-pending body>.desktop-surface{display:none!important}
