/* Role-protected operations console; base component language lives in dashboard.css. */

.admin-hero { padding-bottom: 2.4rem; }
.admin-grid-primary { grid-template-columns: minmax(0, 1.45fr) minmax(19rem, .85fr); }
.admin-projects { display: grid; gap: .8rem; }
.admin-project-card { border: 1px solid var(--border-subtle); border-radius: var(--radius-md); padding: 1rem; background: color-mix(in srgb, var(--bg-secondary) 82%, transparent); }
.admin-project-card h3 { margin: 0; color: var(--color-text); font-size: var(--text-lg); }
.admin-project-header, .admin-policy-row, .admin-endpoint-row, .admin-user-heading { display: flex; align-items: center; justify-content: space-between; gap: .8rem; }
.admin-project-card p { margin: .4rem 0 0; color: var(--color-text-secondary); font-size: var(--text-sm); }
.admin-policy-row { flex-wrap: wrap; margin-top: .85rem; padding-top: .75rem; border-top: 1px solid var(--border-subtle); }
.admin-policy-row span { color: var(--color-text-muted); font-size: var(--text-xs); }
.admin-endpoints { display: grid; gap: .45rem; margin-top: .8rem; }
.admin-endpoint-row { align-items: flex-start; padding: .6rem 0; border-bottom: 1px solid var(--border-subtle); }
.admin-endpoint-row:last-child { border-bottom: 0; padding-bottom: 0; }
.admin-endpoint-row strong { display: block; color: var(--color-text); font-size: var(--text-sm); }
.admin-endpoint-row code { color: var(--color-highlight); overflow-wrap: anywhere; font-size: .75rem; }
.admin-endpoint-meta { color: var(--color-text-muted); font-size: var(--text-xs); text-align: right; }
.admin-details { display: grid; gap: .55rem; color: var(--color-text-secondary); font-size: var(--text-sm); }
.admin-details summary { cursor: pointer; color: var(--color-highlight); }
.admin-unavailable-actions { align-self: center; display: flex; flex-wrap: wrap; gap: .65rem; }
.admin-user-result { min-height: 4.2rem; padding: .8rem 0; border-bottom: 1px solid var(--border-subtle); }
.admin-user-heading { align-items: flex-start; }
.admin-user-heading strong { color: var(--color-text); overflow-wrap: anywhere; }
.admin-user-result p { margin: .35rem 0 0; color: var(--color-text-secondary); font-size: var(--text-sm); }
.admin-user-meta { color: var(--color-text-muted); font-size: var(--text-xs); text-align: right; }
.admin-tag-list { display: flex; flex-wrap: wrap; gap: .35rem; margin-top: .7rem; }
.admin-tag { display: inline-block; border: 1px solid var(--border-subtle); border-radius: var(--radius-pill); padding: .15rem .42rem; color: var(--color-text-secondary); font-size: var(--text-xs); }
.admin-tag.is-live { border-color: color-mix(in srgb, var(--color-live) 45%, var(--border-color)); color: var(--color-live); }

@media (max-width: 960px) {
    .admin-grid-primary { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
    .admin-project-header, .admin-policy-row, .admin-endpoint-row, .admin-user-heading { align-items: flex-start; flex-direction: column; }
    .admin-endpoint-meta, .admin-user-meta { text-align: left; }
    .admin-unavailable-actions { align-self: stretch; }
    .admin-unavailable-actions .btn { width: 100%; }
}
