:root {
    --admin-bg: linear-gradient(180deg, #f8f9fb 0%, #f0f3f7 100%);
    --admin-surface: #ffffff;
    --admin-ink: #151a22;
    --admin-subtle: #576173;
    --admin-border: #d4dae3;
    --admin-accent: #1d5dff;
    --admin-accent-soft: #e8efff;
    --admin-success: #1f8f5f;
    --admin-warning: #ad7f0c;
}

.admin-workspace {
    background: var(--admin-bg);
    border: 1px solid var(--w-border, var(--admin-border));
    border-radius: 10px;
    padding: 1.25rem;
}

.admin-title-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
}

.admin-title {
    font-family: var(--font-serif);
    font-size: 1.35rem;
    font-weight: 600;
    letter-spacing: -0.02em;
    color: var(--w-text, var(--admin-ink));
    margin: 0;
}

.admin-subtitle {
    font-size: 13px;
    color: var(--w-muted, var(--admin-subtle));
    margin: 0;
    max-width: 64ch;
    line-height: 1.45;
}

.metric-strip {
    display: grid;
    grid-template-columns: repeat(6, minmax(120px, 1fr));
    gap: 0.75rem;
}

.metric-card {
    background: hsl(40,20%,99%);
    border: 1px solid var(--w-border, var(--admin-border));
    border-radius: 12px;
    padding: 0.9rem;
    box-shadow: 0 1px 2px hsla(210,40%,12%,0.04), 0 4px 12px hsla(210,40%,12%,0.03);
}

.metric-label {
    font-size: 0.78rem;
    color: var(--admin-subtle);
    margin: 0;
}

.metric-value {
    font-size: 1.35rem;
    font-weight: 700;
    margin: 0.2rem 0 0;
    color: var(--admin-ink);
}

.admin-panel {
    background: hsl(40,20%,99%);
    border: 1px solid var(--w-border, var(--admin-border));
    border-radius: 10px;
    padding: 1rem;
    box-shadow: 0 1px 2px hsla(210,40%,12%,0.04), 0 4px 12px hsla(210,40%,12%,0.03);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.admin-panel:hover {
    border-color: #c4cfdd;
    box-shadow: 0 12px 28px hsla(210,40%,12%,0.08);
}

.admin-panel p {
    margin: 0 0 .8rem;
    max-width: 60ch;
    line-height: 1.45;
}

.admin-action-card {
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
    border-radius: 10px;
}

.admin-action-card .btn {
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
}

.admin-action-card .btn-primary {
    box-shadow: 0 2px 8px hsla(172,55%,32%,0.25);
}

.admin-action-card .btn-outline-primary {
    padding: 7px 14px;
    font-size: 13px;
    border: 1px solid var(--w-border);
}

.admin-panel-body {
    min-height: 100%;
    display: flex;
    flex-direction: column;
}

.admin-panel-actions {
    margin-top: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: .5rem;
}

.admin-panel-actions .btn {
    min-width: 148px;
    border-radius: 8px;
}

.admin-panel-title {
    margin: 0 0 0.75rem;
    color: var(--admin-ink);
    font-size: 1rem;
    font-weight: 700;
}

.admin-now-queue {
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}

.admin-now-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: .8rem;
    padding: .55rem .65rem;
    border: 1px dashed #ccd4e1;
    border-radius: 10px;
    margin-bottom: .5rem;
}

.admin-now-item:last-child {
    margin-bottom: 0;
}

.admin-now-item p {
    margin: 0;
    max-width: 74ch;
    line-height: 1.4;
}

.admin-now-item strong {
    color: var(--admin-ink);
}

.admin-now-item.is-loading {
    border-style: solid;
    animation: pulseItem 1.25s ease-in-out infinite;
}

.admin-feedback-note {
    margin: 0 0 .55rem;
    color: var(--admin-subtle);
    font-size: .82rem;
}

.form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(220px, 1fr));
    gap: 1rem;
}

.form-grid .full {
    grid-column: 1 / -1;
}

@media (max-width: 992px) {
    .metric-strip {
        grid-template-columns: repeat(2, minmax(120px, 1fr));
    }

    .form-grid {
        grid-template-columns: 1fr;
    }
}

@keyframes pulseItem {
    0% { opacity: .75; }
    50% { opacity: 1; }
    100% { opacity: .75; }
}
