/* Azure-only additions: safe-area padding (the artifact host used to add this) and the sign-in gate. */
:root { padding-top: env(safe-area-inset-top, 0px); padding-bottom: env(safe-area-inset-bottom, 0px); }
html, body { margin: 0; }
#gate { position: fixed; inset: 0; z-index: 90; display: grid; place-items: center; padding: max(24px, env(safe-area-inset-top, 0px)) max(16px, env(safe-area-inset-right, 0px)) max(24px, env(safe-area-inset-bottom, 0px)) max(16px, env(safe-area-inset-left, 0px)); background: var(--bg); overflow-y: auto; }
.gate-card { width: 100%; max-width: 440px; display: flex; flex-direction: column; gap: 14px; }
.gate-brand { font-family: var(--font-display); font-style: italic; font-weight: 500; font-size: 30px; color: var(--fg); margin-bottom: 18px; }
.gate-brand span { display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: var(--accent); margin-left: 3px; vertical-align: .1em; }
.gate-card h1 { font-family: var(--font-display); font-weight: 500; font-size: clamp(28px, 7vw, 36px); line-height: 1.12; letter-spacing: -.02em; margin: 0; text-wrap: balance; }
.gate-card p { margin: 0; color: var(--fg-2); font-size: 15.5px; line-height: 1.55; }
.gate-card .gate-fine { color: var(--muted); font-size: 13.5px; }
.gate-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 8px; }
.gate-actions .btn { flex: 1 1 160px; height: 46px; }
.ad-user { padding: 12px 0; border-bottom: 1px solid var(--line-soft); display: flex; flex-direction: column; gap: 8px; }
.ad-user:last-child { border-bottom: 0; }
.ad-top { display: flex; align-items: center; gap: 10px; }
.ad-who { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.ad-who b { font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ad-who small { color: var(--muted); font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ad-st { font-size: 12px; font-weight: 600; padding: 2px 8px; border-radius: 6px; background: var(--surface-2); color: var(--fg-2); }
.ad-st[data-s="pending"] { background: var(--accent-wash); color: var(--accent); }
.ad-st[data-s="suspended"] { background: var(--danger-wash); color: var(--danger); }
.ad-row { font-size: 13px; color: var(--muted); font-variant-numeric: tabular-nums; }
.ad-ctl { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; font-size: 14px; }
.ad-ctl .input.sm { width: 80px; display: inline-block; margin-left: 4px; }
.ad-ctl .spacer { flex: 1; }
