/* Login presentation only. Native forms, OAuth, CSRF and validation are unchanged. */
html:has(body.st-login-app){color-scheme:light!important;background:#f8f5ed;--bg:#f8f5ed;--card:#fffdf8;--ink:#34462d;--muted:#7a806b;--line:#e2e5d5;--green:#627d36;--green-soft:#edf0de}
body.st-login-app{--bg:#f8f5ed;--card:#fffdf8;--ink:#34462d;--muted:#7a806b;--line:#e2e5d5;--green:#627d36;--green-soft:#edf0de;background:#f8f5ed!important;color:#34462d!important;font-family:ui-rounded,system-ui,-apple-system,'Segoe UI',sans-serif;padding:24px 16px;min-height:100dvh;color-scheme:light}
.st-login-app .login-wrap{max-width:440px;gap:12px}
.st-login-app .login-card{padding:24px;border:1px solid #e2e5d5;border-radius:25px;background:#fffdf8!important;box-shadow:0 8px 32px #34462d05}
.st-login-app .brand{display:flex;flex-direction:column;align-items:flex-start;gap:1px;margin-bottom:22px;width:fit-content}
.st-login-app .brand-name{font-size:28px;line-height:1.1;letter-spacing:-1.5px;font-weight:800;color:#587232}
.st-login-app .brand small{font-size:9px;letter-spacing:1px;color:#7a806b}
.st-login-app .auth-tabs{background:#edf0de!important;border:1px solid #e1e5d2!important;padding:4px;border-radius:12px;display:flex;margin-bottom:17px;gap:4px}
.st-login-app .auth-tabs a{flex:1;display:flex;align-items:center;justify-content:center;min-height:39px;border-radius:9px;color:#7b8767!important;font-size:12px}
.st-login-app .auth-tabs a[aria-current=page]{background:#fffdf8!important;color:#627d36!important;box-shadow:0 2px 6px #34462d08}
.st-login-app .login-welcome{display:flex;align-items:center;position:relative;overflow:hidden;background:#edf0de;border-radius:17px;min-height:178px;margin-bottom:19px;padding:19px 14px}
.st-login-app .login-welcome-copy{width:65%;position:relative;z-index:1}
.st-login-app .login-eyebrow{font-size:8px;letter-spacing:1.35px;color:#7d8a5e;font-weight:650}
.st-login-app .login-welcome h1{font-size:26px;line-height:1.12;letter-spacing:-1px;margin:11px 0 9px;color:#34462d;font-weight:750}
.st-login-app .login-welcome .accent{color:#627d36}
.st-login-app .login-welcome .sub{font-size:11px;line-height:1.7;margin:0;color:#788463}
.st-login-app .login-welcome img{position:absolute;right:-9px;bottom:1px;height:calc(100% - 10px);width:49%;object-fit:contain;filter:drop-shadow(0 7px 8px #34462d13)}
.st-login-app .discord-btn{background:#627d36!important;border-color:#627d36!important;color:#fffdf8!important;box-shadow:0 3px 0 #4f652b1a}
.st-login-app .google-btn{background:#fffdf8!important;color:#34462d!important;border-color:#dfe4d0!important}
.st-login-app .discord-btn,.st-login-app .google-btn{font-family:inherit;min-height:48px;font-size:12px;border-radius:11px}
.st-login-app .sec-note{background:#f2f2e5!important;color:#7a806b!important;font-size:10px;padding:10px;border:0}
.st-login-app .sec-note svg{color:#7d9159}
.st-login-app .sandi-lipat{border-color:#e2e5d5;margin-top:17px;padding-top:14px}
.st-login-app .auth-form-title{color:#536c37!important;font-size:13px!important;font-weight:650}
.st-login-app .sandi-form{gap:8px}
.st-login-app .sandi-form label{font-size:11px;color:#687951}
.st-login-app .sandi-form input{background:#faf9f2!important;color:#34462d!important;border-color:#dfe4d0!important;font-family:inherit;border-radius:10px}
.st-login-app .sandi-form button{font-family:inherit;background:#627d36!important;color:#fffdf8!important;min-height:46px;border-radius:11px}
.st-login-app .sandi-form a{font-size:11px;color:#718653;min-height:30px;display:inline-flex;align-items:center}
.st-login-app .access-chips{border-color:#e2e5d5;margin-top:17px;padding-top:13px;gap:5px}
.st-login-app .chip{background:#edf0de;border:0;color:#78855f;font-size:10px}
.st-login-app .chip-label{font-size:10px}
.st-login-app .back-home{font-size:11px;color:#627d36}
.st-login-app .page-footer{font-size:10px;color:#899078}
.st-login-app .alert-success{background:#edf0de;color:#627d36;border-color:#dbe2c7}
.st-login-app .alert-danger,.st-login-app .sandi-galat{background:#f9ece8;color:#aa655b;border-color:#edcfc8}
.st-login-app .mm-card{background:#fffdf8!important;color:#34462d!important;border-color:#e2e5d5}
.st-login-app .mm-join{background:#627d36!important}
.st-login-app :focus-visible{outline:2px solid #789447!important;outline-offset:3px}
@media(max-width:480px){body.st-login-app{padding:21px 18px}.st-login-app .login-card{padding:0;border:0;border-radius:0;background:transparent!important;box-shadow:none}.st-login-app .brand{margin-bottom:20px}.st-login-app .login-welcome{min-height:180px}.st-login-app .login-welcome h1{font-size:27px}}
@media(max-width:350px){body.st-login-app{padding:18px 14px}.st-login-app .login-welcome h1{font-size:24px}.st-login-app .login-welcome img{width:47%}.st-login-app .login-eyebrow{font-size:7px;letter-spacing:1px}}
/* Registration shares the login theme, with native consent and field semantics. */
.st-register-app .auth-help{font-size:10px;line-height:1.7;color:#849070}
.st-register-app .sandi-form .auth-check{display:flex;align-items:flex-start;gap:9px;padding:11px 0;font-size:11px;line-height:1.8;font-weight:400;color:#73815f}
.st-register-app .sandi-form .auth-check input[type=checkbox]{width:18px;height:18px;min-height:18px;margin-top:2px;padding:0;flex:0 0 18px;accent-color:#627d36}
.st-register-app .sandi-form .auth-check a{display:inline;min-height:0;font-size:inherit;color:#627d36;text-decoration:underline;text-underline-offset:2px}
.st-register-app .setra-form-notice{font-size:10px;line-height:1.8;color:#879176;background:#f0f1e3;border:1px solid #e2e5d5;border-radius:10px;padding:11px;margin-top:13px}
.st-register-app .auth-divider{margin:19px 0 10px;text-align:center;color:#8c947c}
.st-register-app .auth-switch{font-size:11px;line-height:1.7;color:#7a8669;text-align:center;margin-top:18px}
.st-register-app .auth-switch a{color:#627d36;font-weight:650}
.st-register-app .browser-home-link{text-align:center;margin-top:10px}
.st-register-app .sandi-form>button{min-height:46px}
