/* Shared login dialog for the library and creator center. */
html.cutcod-auth-open{overflow:hidden}
.cutcod-auth{box-sizing:border-box;width:min(420px,calc(100% - 32px));max-height:calc(100dvh - 48px);overflow:auto;overscroll-behavior:contain;margin:auto;padding:34px 32px 27px;border:1px solid #deded8;border-radius:24px;background:#fdfcf9;color:#191919;font-family:"PingFang SC",-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;box-shadow:0 24px 90px #00000014;scrollbar-width:thin;scrollbar-color:#d9d9d2 transparent}
.cutcod-auth::backdrop{background:rgba(25,25,20,.22);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.cutcod-auth *{box-sizing:border-box}
.cutcod-auth [hidden]{display:none!important}
.cutcod-auth button,.cutcod-auth input{font:inherit}
.cutcod-auth button{cursor:pointer}
.cutcod-auth button:disabled{cursor:wait;opacity:.55}
.cutcod-auth .auth-close{position:absolute;display:grid;place-items:center;top:12px;right:12px;width:32px;height:32px;padding:7px;border:0;border-radius:50%;background:transparent;color:#262622}
.cutcod-auth .auth-close:hover{background:#efeee8}
.cutcod-auth .auth-close svg{display:block;width:18px;height:18px;pointer-events:none}
.cutcod-auth h2{margin:0 20px 12px 0;font-size:28px;line-height:1.3;font-weight:650;letter-spacing:-1px}
.cutcod-auth .auth-subtitle{margin:0 0 27px;color:#777770;font-size:13px;line-height:1.8}
.cutcod-auth label{display:block;margin:0 0 8px;color:#31312d;font-size:13px;line-height:1.4}
.cutcod-auth input{display:block;width:100%;height:45px;margin:0 0 18px;padding:11px 13px;border:1px solid #d7d7cf;border-radius:12px;background:#fff;color:#191919;font-size:14px;outline-offset:2px}
.cutcod-auth input::placeholder{color:#a2a299}
.cutcod-auth input:focus{outline:2px solid #aaa;outline-offset:2px;border-color:#777}
.cutcod-auth .auth-code-input{display:flex;align-items:center;gap:8px;padding-right:5px;height:45px;border:1px solid #d7d7cf;border-radius:12px;background:#fff}
.cutcod-auth .auth-code-input:focus-within{outline:2px solid #aaa;outline-offset:2px;border-color:#777}
.cutcod-auth .auth-code-input input{min-width:0;flex:1;height:43px;margin:0;border:0;background:transparent;outline:0}
.cutcod-auth .auth-code-input button{flex:0 0 auto;border:0;border-radius:8px;padding:9px 10px;background:#f0f0e9;color:#35352f;font-size:11px;white-space:nowrap}
.cutcod-auth .auth-code-input button:disabled{cursor:default}
.cutcod-auth .auth-code-hint{margin:9px 0 20px;color:#8d8d84;font-size:11px;line-height:1.6}
.cutcod-auth .auth-error{margin:0 0 14px;color:#b74349;font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.cutcod-auth .auth-primary,.cutcod-auth .auth-google{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:44px;margin:0;padding:0 18px;border:0;border-radius:999px;background:#171717;color:#fff;font-size:14px;font-weight:600;transition:background .15s}
.cutcod-auth .auth-primary:hover{background:#333}
.cutcod-auth .auth-divider{display:flex;align-items:center;gap:12px;margin:18px 0;color:#909087;font-size:11px;white-space:nowrap}
.cutcod-auth .auth-divider::before,.cutcod-auth .auth-divider::after{content:"";height:1px;flex:1;background:#e6e5df}
.cutcod-auth .auth-google{border:1px solid #ddddd6;background:#f4f3ed;color:#191919}
.cutcod-auth .auth-google:hover{background:#ecebe3}
.cutcod-auth .auth-google svg{width:17px;height:17px;flex:0 0 auto}
.cutcod-auth .auth-switch{display:flex;justify-content:center;align-items:center;gap:3px;margin:27px 0 0;color:#828279;font-size:12px}
.cutcod-auth .auth-switch button{padding:4px;border:0;background:transparent;color:#272724;font-size:12px;font-weight:600}
.cutcod-auth .auth-switch button:hover{text-decoration:underline;text-underline-offset:3px}
.cutcod-auth button:focus-visible{outline:2px solid #999;outline-offset:3px}
@media(max-width:480px){.cutcod-auth{padding:32px 24px 24px;max-height:calc(100dvh - 24px);border-radius:22px}.cutcod-auth h2{font-size:26px}.cutcod-auth .auth-subtitle{margin-bottom:23px}}
