body.admin-page {
    max-width: none;
    min-height: 100vh;
    background: var(--bg);
}

.admin-header {
    position: sticky;
    top: 0;
    z-index: 20;
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
    padding: 1.5rem;
    background: linear-gradient(to bottom, var(--bg), rgba(25, 28, 31, .82), transparent);
}

.admin-brand,
.admin-actions {
    display: flex;
    align-items: center;
}

.admin-brand {
    gap: .65rem;
    text-decoration: none;
}

.admin-logo {
    width: 1.8rem;
    height: 1.5rem;
    background: var(--orange) !important;
}

.admin-actions {
    gap: .5rem;
}

.admin-link,
.admin-refresh {
    padding: .55rem .75rem;
    border: solid .05rem var(--gray10);
    border-radius: .5rem;
    color: var(--gray70);
    text-decoration: none;
    transition: all .18s ease;
}

.admin-link:hover,
.admin-refresh:hover {
    color: var(--txt);
    background: var(--gray05);
}

.admin-shell {
    width: min(980px, 100%);
    margin: 0 auto;
    padding: 3rem 1.5rem 6rem;
}

.admin-hero {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 2rem;
    padding: 3rem 0;
}

.admin-kicker {
    color: var(--orange);
    font-size: .78rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0;
    margin-bottom: .7rem;
}

.admin-title {
    font-size: 6.5rem;
    line-height: .82;
    letter-spacing: 0;
}

.admin-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(6rem, 1fr));
    gap: .5rem;
    min-width: min(26rem, 100%);
}

.admin-stat {
    border: solid .05rem var(--gray10);
    border-radius: .5rem;
    background: var(--gray03);
    padding: .9rem;
}

.admin-stat-value {
    font-size: 1.5rem;
    font-weight: 650;
}

.admin-stat-label {
    color: var(--gray50, rgba(247, 245, 242, .5));
    font-size: .78rem;
    margin-top: .25rem;
}

.admin-workspace {
    border-top: solid .05rem var(--gray10);
    padding-top: 1rem;
}

.admin-form {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(0, .9fr) auto;
    gap: .6rem;
    align-items: end;
    padding: 1rem 0 1.5rem;
}

.admin-field {
    display: flex;
    flex-direction: column;
    gap: .45rem;
}

.admin-field span {
    color: var(--gray40);
    font-size: .78rem;
}

.admin-field input {
    min-height: 2.8rem;
    border: solid .05rem var(--gray10);
    border-radius: .5rem;
    background: var(--gray03);
    color: var(--txt);
    padding: .75rem .85rem;
}

.admin-field input:focus {
    border-color: rgba(236, 126, 0, .55);
    background: var(--gray05);
}

.admin-button {
    min-height: 2.8rem;
    padding: 0 1rem;
    border-radius: .5rem;
    background: var(--txt);
    color: var(--bg);
    font-weight: 700;
}

.admin-message {
    min-height: 1.4rem;
    color: var(--orange);
    font-size: .88rem;
    margin-bottom: 1rem;
}

.admin-users {
    border: solid .05rem var(--gray10);
    border-radius: .5rem;
    overflow: hidden;
    background: rgba(247, 245, 242, .025);
}

.admin-users-head,
.admin-user-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 7rem 7rem 11rem;
    gap: 1rem;
    align-items: center;
}

.admin-users-head {
    color: var(--gray40);
    font-size: .8rem;
    padding: .85rem 1rem;
    border-bottom: solid .05rem var(--gray10);
}

.admin-user-row {
    padding: 1rem;
    border-bottom: solid .05rem var(--gray05);
}

.admin-user-row:last-child {
    border-bottom: 0;
}

.admin-person {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: .25rem;
}

.admin-person-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-person-email,
.admin-meta {
    color: var(--gray40);
    font-size: .82rem;
}

.admin-pill {
    width: fit-content;
    border: solid .05rem var(--gray10);
    border-radius: .5rem;
    padding: .35rem .55rem;
    color: var(--gray70);
    font-size: .78rem;
}

.admin-pill.is-active {
    border-color: rgba(67, 188, 136, .34);
    color: #8de7bd;
}

.admin-pill.is-suspended {
    border-color: rgba(255, 107, 107, .34);
    color: var(--red);
}

.admin-row-actions {
    display: flex;
    justify-content: flex-end;
    gap: .4rem;
}

.admin-row-button {
    padding: .5rem .65rem;
    border-radius: .5rem;
    background: var(--gray05);
    color: var(--gray70);
    font-size: .82rem;
}

.admin-row-button:hover {
    color: var(--txt);
    background: var(--gray075);
}

.admin-row-button.is-danger {
    color: var(--red);
}

.admin-empty {
    padding: 3rem 1rem;
    text-align: center;
    color: var(--gray40);
}

@media (max-width: 760px) {
    .admin-title {
        font-size: 4.4rem;
    }

    .admin-hero {
        align-items: start;
        flex-direction: column;
    }

    .admin-stats,
    .admin-form,
    .admin-users-head,
    .admin-user-row {
        grid-template-columns: 1fr;
    }

    .admin-users-head {
        display: none;
    }

    .admin-user-row {
        gap: .7rem;
    }

    .admin-row-actions {
        justify-content: flex-start;
    }
}