/* login.css - auth modal: log in, or create an account */
.auth-modal{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(14,19,32,.55)}
.auth-modal[hidden]{display:none}
.modal-card{position:relative;width:100%;max-width:420px;max-height:calc(100vh - 32px);overflow:auto;display:flex;flex-direction:column;gap:14px;padding:26px 24px 22px;border:1px solid var(--line);border-radius:18px;background:var(--bg);box-shadow:var(--shadow)}
.modal-card h2{margin:0;font-size:24px;letter-spacing:-.01em}
.modal-x{position:absolute;top:8px;right:12px;border:0;background:none;font-size:26px;line-height:1;color:var(--mute);cursor:pointer}
.modal-x:hover{color:var(--ink)}
.auth-step{display:flex;flex-direction:column;gap:10px}
.auth-step[hidden]{display:none}
.modal-card label{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);font-weight:700;margin-top:4px}
.modal-card input{font:inherit;font-size:16px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--soft);color:var(--ink)}
.modal-card input:focus{outline:2px solid var(--accent);outline-offset:1px;background:var(--bg)}
.modal-card .btn{width:100%}
.modal-card .btn.ghost{width:auto;align-self:center}
.auth-switch{margin:4px 0 0;font-size:13px;color:var(--mute);text-align:center}
.link{border:0;background:none;padding:0;color:var(--accent);font-weight:700;cursor:pointer}
.link:hover{text-decoration:underline}
.auth-msg{margin:0;min-height:1.2em;font-size:13px;color:var(--mute)}

/* header: login button, or the logged-in user's name with an icon */
.auth-slot{position:relative;display:flex;align-items:center;margin-left:auto}
.user-menu{position:relative}
.user-chip{display:inline-flex;align-items:center;gap:8px;padding:5px 12px 5px 5px;border:1px solid var(--line);border-radius:99px;background:var(--bg);font:inherit;font-weight:700;color:var(--ink);cursor:pointer}
.user-chip:hover{border-color:var(--ink)}
.user-icon{width:28px;height:28px;padding:5px;box-sizing:border-box;border-radius:50%;background:var(--accent-soft);fill:none;stroke:var(--accent-d);stroke-width:1.8;stroke-linecap:round}
.user-dropdown{position:absolute;right:0;top:calc(100% + 8px);min-width:140px;padding:6px;border:1px solid var(--line);border-radius:12px;background:var(--bg);box-shadow:var(--shadow);z-index:30}
.user-dropdown .link{display:block;width:100%;padding:8px 10px;border-radius:8px;text-align:left;color:var(--ink);text-decoration:none}
.user-dropdown .link:hover{background:var(--soft)}
.auth-timer{margin:0;font-size:13px;font-weight:700;color:var(--accent-d);font-family:var(--f-mono)}
.auth-timer[hidden]{display:none}
