/* Optional account pages share the library's paper and forest-green palette. */
.auth-page{padding-top:58px;padding-bottom:76px;min-height:calc(100vh - 300px)}
.auth-card{width:min(100%,520px);margin-inline:auto;padding:34px 38px;border:1px solid #dbe4d2;border-radius:18px;background:#fcfdf8;box-shadow:0 18px 55px #27432b08}
.auth-card h1{font-family:var(--serif);font-size:36px;font-weight:500;line-height:1.2;letter-spacing:-.6px;margin:16px 0 18px;overflow-wrap:anywhere}
.auth-card .auth-lead{font-size:15px;line-height:1.8;color:#617057;margin-bottom:25px}
.auth-providers{display:grid;gap:12px}
.auth-provider-form{margin:0}
.auth-provider{display:flex;align-items:center;gap:14px;width:100%;min-height:54px;padding:13px 16px;border:1px solid #cbd9c0;border-radius:9px;background:#fff;color:#25452f;text-align:start;font-size:14px;line-height:1.5}
.auth-provider>span:not(.auth-provider-mark){flex:1;min-width:0;overflow-wrap:anywhere}
.auth-provider small{font-size:10px;line-height:1.4;max-width:85px;text-align:end;color:#6d795f}
.auth-provider:hover:not(:disabled){background:#f0f5e9;border-color:#89a57b}
.auth-provider:disabled{opacity:1;cursor:not-allowed;background:#f2f5ee;color:#73816a;border-color:#dce4d5}
.auth-provider:disabled[aria-busy]{cursor:wait}
.auth-provider-mark{width:22px;min-width:22px;height:22px;display:grid;place-items:center;font-family:Arial,sans-serif;font-size:20px;line-height:1;font-weight:700}
.auth-mark-google{color:#4285f4}.auth-mark-github{font-size:11px;background:#27342b;border-radius:50%;color:#fff}.auth-mark-discord{font-size:15px;background:#5865f2;border-radius:6px;color:#fff}
.auth-provider:disabled .auth-provider-mark,.auth-provider:disabled svg{opacity:.6}
.auth-availability{padding:12px 14px;border-radius:7px;background:#edf2e7;color:#596e4b;font-size:13px;line-height:1.7;margin-top:16px}
.auth-privacy-note,.auth-session-note{font-size:12px;line-height:1.8;color:#6b7a62;margin-top:20px}
.auth-privacy-note a,.auth-account-links a,.auth-back{color:#315d3b;text-decoration:underline;text-underline-offset:3px}
.auth-back{display:inline-flex;margin-top:22px;font-size:13px;line-height:1.7}
.auth-feedback{padding:12px 14px;border-radius:7px;background:#edf2e7;font-size:13px;line-height:1.7;margin:18px 0;color:#3e5e35}
.auth-error{background:#fff2e9;color:#8a4324;border:1px solid #ecd1be}
.auth-signed-in{display:flex;align-items:center;gap:8px;color:#436c3d;font-size:14px;margin-bottom:24px}
.auth-signed-in>span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#e5eedb;font-size:13px}
.auth-account-details{margin:0 0 26px;border-top:1px solid #dfe6d8}
.auth-account-details>div{padding:14px 0;border-bottom:1px solid #dfe6d8}
.auth-account-details dt{font-size:12px;color:#6b7d5b;margin-bottom:4px}
.auth-account-details dd{margin:0;font-size:15px;color:#27452f;overflow-wrap:anywhere}
.auth-signout{width:100%;border:1px solid #c2d2b6;background:#eef3e6;color:#294d31}
.auth-signout:hover:not(:disabled){background:#e3edd7}.auth-signout:disabled{cursor:not-allowed}
.auth-account-links{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:22px;font-size:13px}
.auth-privacy-page{max-width:880px;overflow-wrap:break-word}
.auth-privacy-page section p{max-width:78ch}
.auth-nav-link{display:inline-flex;align-items:center;min-height:40px;color:#375c3c;font-size:13px;line-height:1.4}
html .mobile-menu .auth-nav-link{display:block;padding:12px 0;border:0;border-radius:0;font-size:14px}
.auth-footer-link{width:min(1320px,calc(100% - 80px));margin:0 auto;padding:0 0 22px;font-size:12px;color:#5c7450}
.auth-footer-link a{text-decoration:underline;text-underline-offset:3px;display:inline-block;min-height:32px;padding:4px 0}
@media(max-width:1150px){.nav-actions{gap:12px}.auth-nav-link{font-size:12px}}
@media(max-width:680px){
 .auth-page{padding-top:28px;padding-bottom:40px;width:calc(100% - 32px)}
 .auth-card{padding:25px 21px;border-radius:13px}
 .auth-card h1{font-size:30px;margin-top:14px;line-height:1.25}
 .auth-card .auth-lead{font-size:14px;margin-bottom:22px}
 .auth-provider{gap:11px;padding:12px 13px;font-size:13px;min-height:54px}
 .auth-provider small{max-width:66px;font-size:9px}
 .auth-availability,.auth-feedback{font-size:12px}
 .auth-privacy-page{width:calc(100% - 40px)}
 .auth-privacy-page section p{font-size:14px;line-height:1.85}
 .auth-footer-link{width:calc(100% - 40px);padding-bottom:18px}
 .nav-actions>.auth-nav-link{display:none}
 .mobile-menu .auth-nav-link{display:block;font-size:14px}
}
