.admin-page .site-main {
    width: min(1280px, calc(100% - 24px));
}
.admin-shell {
    width: min(1280px, 100%);
    margin-inline: auto;
}
.admin-section {
    display: grid;
    gap: 18px;
    margin-top: 18px;
}
.admin-topbar {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}
.admin-topbar h1,
.admin-card-spaced h2,
.admin-card-spaced h3 {
    margin-top: 0;
}
.admin-topbar-actions,
.admin-actions-row,
.admin-inline-form {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
}
.admin-nav {
    display: flex;
    gap: 10px;
    margin-top: 12px;
    overflow-x: auto;
    padding-bottom: 4px;
}
.admin-nav a {
    white-space: nowrap;
    border: 1px solid var(--color-line);
    border-radius: 999px;
    padding: 10px 14px;
    color: var(--color-muted);
    background: rgba(255,255,255,.025);
}
.admin-nav a:hover { color: var(--color-gold-light); border-color: rgba(218,169,82,.48); }
.admin-grid { display: grid; gap: 14px; }
.admin-stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.admin-stat-card { padding: 18px; }
.admin-stat-card span { display:block; color: var(--color-muted); font-size: 13px; }
.admin-stat-card strong { display:block; margin-top: 8px; color: var(--color-gold-light); font-size: 30px; font-family: var(--font-display); }
.admin-card-spaced { display: grid; gap: 16px; }
.admin-card-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; flex-wrap: wrap; }
.admin-table-wrap { overflow-x: auto; border: 1px solid var(--color-line); border-radius: 16px; }
.admin-table { width: 100%; min-width: 760px; border-collapse: collapse; font-size: 14px; }
.admin-table th,
.admin-table td { padding: 13px 14px; border-bottom: 1px solid rgba(218,169,82,.13); text-align: left; vertical-align: top; }
.admin-table th { color: var(--color-gold-light); font-size: 12px; text-transform: uppercase; letter-spacing: .08em; background: rgba(255,255,255,.03); }
.admin-table tr:last-child td { border-bottom: 0; }
.status-badge { display: inline-flex; align-items:center; border: 1px solid var(--color-line); border-radius: 999px; padding: 6px 10px; color: var(--color-gold-light); background: rgba(218,169,82,.08); font-size: 12px; }
.status-pending, .status-active { border-color: rgba(218,169,82,.6); }
.status-rejected, .status-blocked, .status-hidden { color: #ffcfbf; border-color: rgba(255,112,92,.45); background: rgba(255,112,92,.08); }
.status-approved, .status-completed { color: #dbffd8; border-color: rgba(116,255,134,.35); background: rgba(116,255,134,.08); }
.status-needs_changes, .status-draft { color: #ffe9b8; }
.admin-two-col { grid-template-columns: minmax(0, 1fr); }
.admin-side-stack { display: grid; gap: 18px; align-content: start; }
.admin-detail-grid,
.admin-help-grid,
.admin-settings-grid,
.admin-edit-grid { display: grid; gap: 12px; }
.admin-detail-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.admin-detail-grid div { border:1px solid var(--color-line); border-radius: 14px; padding: 12px; background: rgba(255,255,255,.025); }
.admin-detail-grid span { display:block; color: var(--color-muted); font-size: 12px; margin-bottom: 5px; }
.admin-detail-grid strong { color: var(--color-gold-light); }
.admin-help-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.admin-help-grid div { border: 1px solid var(--color-line); border-radius: 16px; padding: 15px; background: rgba(255,255,255,.025); }
.admin-help-grid p { color: var(--color-muted); margin-bottom: 0; }
.admin-form-stack { display: grid; gap: 12px; }
.admin-form-stack label,
.admin-settings-grid label,
.admin-edit-grid label { display: grid; gap: 7px; color: var(--color-gold-light); font-size: 13px; }
.form-input { width: 100%; border: 1px solid var(--color-line); border-radius: 12px; padding: 11px 12px; color: var(--color-text); background: rgba(0,0,0,.28); }
textarea.form-input { resize: vertical; }
.admin-media-list { display: grid; gap: 10px; }
.admin-media-item { display:grid; gap:5px; border:1px solid var(--color-line); border-radius: 14px; padding: 12px; background: rgba(255,255,255,.025); }
.admin-media-item a { color: var(--color-gold-light); }
.admin-answer-list { display:grid; gap: 10px; }
.admin-answer-list div { border-left: 2px solid var(--color-gold); padding-left: 12px; }
.admin-settings-group { margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--color-line); }
.admin-settings-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.admin-edit-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.admin-edit-grid .btn { align-self: end; }
.admin-code { overflow:auto; border:1px solid var(--color-line); border-radius: 14px; padding: 14px; background: rgba(0,0,0,.28); color: var(--color-gold-light); }
.small { font-size: 12px; }
.muted { color: var(--color-muted); }
@media (min-width: 900px) {
    .admin-stats-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .admin-two-col { grid-template-columns: minmax(0, 1.45fr) minmax(300px, .55fr); }
}
@media (max-width: 720px) {
    .admin-topbar { display: grid; }
    .admin-detail-grid,
    .admin-help-grid,
    .admin-settings-grid,
    .admin-edit-grid { grid-template-columns: 1fr; }
    .admin-inline-form { align-items: stretch; }
    .admin-inline-form .form-input { min-width: 120px; }
}
