.acct{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:auto}
.acct a,.acct button{font:inherit;font-size:13px;font-weight:700;color:var(--ink);text-decoration:none;border:0;background:transparent;padding:8px 10px;border-radius:10px;cursor:pointer;white-space:nowrap}
.acct a:hover,.acct button:hover{background:var(--card)}
.acct .credits{background:var(--accent-soft);color:var(--accent);border-radius:99px;padding:6px 11px;font-size:12px;font-weight:800;white-space:nowrap}
.acct .login{background:var(--ink);color:#fff}
.acct .login:hover{background:#000}
.menu{position:relative}
.menu-pop{position:absolute;right:0;top:calc(100% + 6px);background:#fff;border-radius:14px;box-shadow:0 10px 30px #0002;padding:6px;min-width:220px;z-index:40;display:none}
.menu-pop.on{display:block}
.menu-pop .who{font-size:12px;color:var(--muted);padding:8px 10px;border-bottom:1px solid var(--line);margin-bottom:4px;word-break:break-all}
.menu-pop button,.menu-pop a{display:block;width:100%;text-align:left}
.modal-bg{position:fixed;inset:0;background:#1d1b1966;backdrop-filter:blur(3px);display:none;align-items:center;justify-content:center;z-index:60;padding:16px}
.modal-bg.on{display:flex}
.modal{background:#fff;border-radius:22px;padding:26px;width:100%;max-width:400px;box-shadow:0 20px 60px #0003;position:relative}
.modal h2{margin:0 0 6px;font-size:21px;letter-spacing:-.02em}
.modal p{margin:0 0 16px;color:var(--muted);font-size:14px;line-height:1.5}
.modal .x{position:absolute;right:14px;top:12px;border:0;background:transparent;font-size:20px;cursor:pointer;color:var(--muted)}
.modal input[type=email],.modal input[type=password]{width:100%;font:inherit;font-size:15px;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;margin-bottom:10px;outline:none}
.modal input:focus{border-color:var(--accent)}
.modal .btn{width:100%}
.modal .link{border:0;background:none;color:var(--accent);font:inherit;font-size:13px;font-weight:700;cursor:pointer;padding:0}
.modal .row{display:flex;justify-content:space-between;margin-top:12px;font-size:13px}
.modal .err{color:#c0392b;font-size:13px;margin-bottom:10px;display:none}
.modal .ok{color:#1e7e4a;font-size:13px;margin-bottom:10px;display:none}
.modal pre{white-space:pre-wrap;font:12.5px/1.5 ui-monospace,Menlo,monospace;background:#f6f4f0;border-radius:12px;padding:12px;max-height:50vh;overflow:auto}
