/* ─── admin (kept restrained — the magazine identity is for the public site) */
.admin-body { background: var(--bone); color: var(--ink); padding-bottom: 4rem; }
.admin-bar  { background: var(--ink); color: var(--bone); padding: .9rem 0; margin-bottom: 2rem; }
.admin-bar-row { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 1rem; }
.admin-home { color: var(--bone); text-decoration: none; font-family: var(--display); font-style: italic; font-size: 1.05rem; }
.admin-bar nav { display: flex; gap: 1rem; align-items: center; }
.admin-bar nav a { color: var(--bone); text-decoration: none; font-family: var(--kufi); font-size: .8rem; letter-spacing: .15em; text-transform: uppercase; }
.admin-btn { background: var(--clay); color: var(--bone) !important; padding: .45rem .8rem; }

.flash-success { background: var(--leaf); }
.flash-error   { background: #8a3614; }

.admin-table { width: 100%; border-collapse: collapse; background: var(--bone); }
.admin-table th, .admin-table td { padding: .8rem .6rem; border-bottom: 1px solid color-mix(in srgb, var(--ink) 12%, transparent); text-align: left; vertical-align: top; }
.admin-table th { font-family: var(--kufi); font-size: .72rem; letter-spacing: .18em; text-transform: uppercase; color: var(--clay-deep); }
.admin-table tr:hover { background: var(--bone-2); }
.admin-tag { display: inline-block; padding: .15em .5em; background: var(--bone-2); border-radius: 2px; font-size: .75rem; }
.admin-tag.draft { background: #d4a44a; color: var(--ink); }
.admin-tag.live  { background: var(--leaf); color: var(--bone); }

.admin-form { display: grid; gap: 1.4rem; max-width: 56rem; }
.admin-form fieldset {
  border: 1px solid color-mix(in srgb, var(--ink) 18%, transparent);
  padding: 1.2rem 1.4rem 1.4rem; background: var(--bone);
}
.admin-form legend { font-family: var(--kufi); font-size: .72rem; letter-spacing: .2em; text-transform: uppercase; color: var(--clay-deep); padding: 0 .5rem; }
.admin-form .row { display: grid; gap: .9rem; grid-template-columns: 1fr; }
@media (min-width: 720px) { .admin-form .row.cols-2 { grid-template-columns: 1fr 1fr; } .admin-form .row.cols-3 { grid-template-columns: repeat(3, 1fr); } }
.admin-form label { display: block; font-family: var(--kufi); font-size: .72rem; letter-spacing: .15em; text-transform: uppercase; color: var(--ink-soft); margin-bottom: .35rem; }
.admin-form input[type=text], .admin-form input[type=url], .admin-form input[type=number], .admin-form input[type=datetime-local], .admin-form select, .admin-form textarea {
  width: 100%; font-family: var(--body); font-size: 1rem; line-height: 1.5;
  padding: .65rem .8rem; background: var(--bone-2); border: 1px solid color-mix(in srgb, var(--ink) 16%, transparent); border-radius: 2px; color: var(--ink);
}
.admin-form textarea { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: .9rem; min-height: 18rem; }
.admin-form .body-textarea { min-height: 32rem; }
.admin-form .help { font-size: .82rem; color: var(--ink-soft); margin-top: .35rem; font-style: italic; }
.admin-form input[type=checkbox] { width: 1.1rem; height: 1.1rem; vertical-align: middle; margin-right: .4rem; }
.admin-form .check-row label { display: flex; align-items: center; text-transform: none; letter-spacing: 0; font-family: var(--body); font-size: .95rem; color: var(--ink); }

.admin-form .actions { display: flex; gap: .8rem; align-items: center; flex-wrap: wrap; padding-top: 1rem; border-top: 1px dashed color-mix(in srgb, var(--ink) 20%, transparent); }
.admin-form .actions button, .admin-form .actions a, .admin-actions button, .admin-actions a {
  font-family: var(--kufi); font-size: .78rem; letter-spacing: .15em; text-transform: uppercase;
  padding: .65rem 1.1rem; background: var(--ink); color: var(--bone); border: none; cursor: pointer; text-decoration: none; border-radius: 2px;
}
.admin-form .actions .primary, .admin-actions .primary { background: var(--clay); }
.admin-form .actions .danger, .admin-actions .danger   { background: var(--clay-deep); }
.admin-form .actions .ghost, .admin-actions .ghost     { background: transparent; color: var(--ink); border: 1px solid var(--ink); }

.errors { background: #f4d3c2; color: var(--clay-deep); padding: 1rem; border-left: 3px solid var(--clay); }
.errors ul { margin: .5rem 0 0; padding-left: 1.2rem; }

.admin-preview { padding: 1rem; background: var(--bone-2); border-left: 3px solid var(--saffron); margin-top: 1rem; font-size: .92rem; }
.admin-preview strong { color: var(--clay-deep); }
