/* Shared styles for login, register, reset, admin and the member bar */
.authbar{background:var(--deep);color:#DCE3DE;font-size:.88rem}
.authbar-inner{max-width:1120px;margin:0 auto;padding:7px 28px;display:flex;gap:16px;justify-content:flex-end;align-items:center}
.authbar a{color:#fff;font-weight:700;text-decoration:none}
.authbar a:hover{text-decoration:underline}
.authbar a.join{background:var(--coral-deep);padding:3px 12px;border-radius:999px}
.authbar form{margin:0}
.linkbtn{appearance:none;background:none;border:0;padding:0;color:#fff;font-weight:700;cursor:pointer;font-size:inherit}
.linkbtn:hover{text-decoration:underline}
@media (max-width:640px){.authbar-inner{padding:7px 16px}}

.mini-head{background:var(--head);border-bottom:10px solid var(--coral-deep)}
.mini-brand{max-width:1120px;margin:0 auto;padding:18px 28px;display:flex;gap:14px;align-items:center;text-decoration:none;color:var(--head-ink)}
.mini-brand .logo{width:48px;height:48px}
.mini-brand small{display:block;font-weight:700;font-size:.78rem;color:var(--head-soft)}
.mini-brand strong{font-family:var(--font-head);font-size:1.6rem;font-weight:600}

.auth-main{max-width:520px;margin:0 auto;padding:34px 20px 60px}
.auth-main.wide{max-width:1120px}
.auth-card{background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:28px}
.auth-card h1{font-size:1.9rem;margin-bottom:6px}
.auth-card .lead{color:var(--muted);margin-bottom:20px}
.auth-card .btn{width:100%;justify-content:center;padding:12px 20px;font-size:1rem}
.auth-links{margin-top:18px;display:flex;flex-direction:column;gap:6px;font-size:.95rem;text-align:center}
.auth-links a,.auth-card a:not(.btn){color:var(--teal-acc);font-weight:700;text-underline-offset:3px}

input[type=email],input[type=password],input[type=search]{width:100%;border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:10px 12px;font-size:1rem}
input[type=email]:focus,input[type=password]:focus,input[type=search]:focus{outline:3px solid var(--mint);outline-offset:0;border-color:var(--teal-acc)}
.has-error input{border-color:var(--coral-deep)}
.field-error{color:var(--coral-deep);font-size:.88rem;font-weight:600}
.pw-wrap{position:relative}
.pw-wrap input{padding-right:70px}
.pw-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:0;color:var(--teal-acc);font-weight:700;cursor:pointer;font-size:.85rem;padding:6px}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}

.notice{max-width:520px;margin:0 auto 18px;border-radius:14px;padding:12px 16px;font-weight:600;border:1px solid var(--line);background:var(--aqua-soft);color:var(--teal)}
.auth-main.wide .notice{max-width:none}
.notice.error{background:var(--coral-tint);color:var(--coral-deep);border-color:var(--coral)}
.notice.success{background:var(--green-tint);color:var(--green-deep);border-color:var(--mint)}

/* admin */
.table-wrap{overflow-x:auto;background:var(--panel);border:1px solid var(--line);border-radius:18px}
table.members{border-collapse:collapse;width:100%;font-size:.92rem}
table.members th,table.members td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
table.members th{font-family:var(--font-head);color:var(--teal);white-space:nowrap}
table.members tr:last-child td{border-bottom:0}
.pill{display:inline-block;border-radius:999px;padding:2px 10px;font-size:.78rem;font-weight:700;background:var(--aqua);color:var(--teal)}
.pill.warn{background:var(--coral-tint);color:var(--coral-deep)}
.pill.muted{background:var(--gold-tint);color:var(--gold-deep)}
.stat-row{display:flex;gap:14px;flex-wrap:wrap;margin:18px 0}
.stat{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:14px 20px;min-width:140px}
.stat b{display:block;font-family:var(--font-head);font-size:1.7rem;color:var(--teal)}
.inline-form{display:inline;margin:0}
.btn.tiny-btn{padding:4px 12px;font-size:.8rem;width:auto}
