/* ログイン・メンバー管理・運営などの単ページ用の骨組み。部品と色は brand.css */
.wrap{max-width:1120px;margin:0 auto;padding:0 24px 72px}
.top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;height:60px;margin-bottom:28px;border-bottom:1px solid var(--line)}
.top-links{display:flex;align-items:center;gap:16px;font-size:13px}
.top-links a,.top-links .link{color:var(--muted);text-decoration:none}
.top-links a:hover,.top-links .link:hover{color:var(--fg)}
.page-h{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.page-h h1{font-size:22px}
.tag{font-size:12px;font-weight:700;color:var(--accent);border:1px solid var(--accent-line);background:var(--accent-soft);border-radius:var(--r-tag);padding:1px 8px}
.card{margin-bottom:16px}
.card>h2{margin-bottom:4px}
.card>h2+p.small{margin:0 0 14px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;align-items:end}
.grid label,.form-col label{display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:var(--muted)}
.grid label.check{flex-direction:row;align-items:center;gap:8px;color:var(--fg);min-height:34px}
table{min-width:560px}
td{font-size:13.5px}
.bar{display:flex;align-items:center;gap:8px;font-size:12px}
.bar i{display:block;height:8px;background:var(--accent);border-radius:4px;min-width:2px}
.bar.track{background:none}

/* 数字の帯（運営） */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));border:1px solid var(--line);border-radius:var(--r-card);margin-bottom:16px;overflow:hidden}
.stats div{padding:14px 18px;border-right:1px solid var(--line)}
.stats div:last-child{border-right:0}
.stats small{display:block;color:var(--muted);font-size:12.5px}
.stats b{font-size:24px;font-variant-numeric:tabular-nums;line-height:1.3}

/* ログイン */
.auth{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto;background:var(--bg)}
.auth-top{height:64px;display:flex;align-items:center;padding:0 24px;border-bottom:1px solid var(--line)}
.auth-main{display:grid;place-items:center;padding:40px 16px 64px}
.auth .card{width:min(400px,100%);padding:28px 28px 24px;margin:0}
.auth h1{font-size:20px;margin-bottom:4px}
.auth .sub{margin:0 0 20px}
.auth form{display:flex;flex-direction:column;gap:14px}
.auth label{display:flex;flex-direction:column;gap:6px;font-size:12.5px;color:var(--muted)}
.auth .inp{width:100%;min-height:40px}
.auth .btn.primary{min-height:42px;font-size:14px;width:100%}
.auth-foot{padding:16px 24px;color:var(--faint);font-size:12px;text-align:center}
@media(max-width:640px){.wrap{padding:0 16px 56px}.top{height:56px;margin-bottom:20px}.stats div{border-right:0;border-bottom:1px solid var(--line)}}
