/* Admin screens: builds on site.css. */
.admin h1 { font-size: 2rem; margin-bottom: 20px; } .admin h2 { font-size: 1.3rem; margin: 36px 0 12px; }
.admin-grid { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 40px; padding-top: 32px; padding-bottom: 64px; } .admin-grid.single { grid-template-columns: minmax(0, 520px); }
.admin-nav a { display: block; padding: 7px 10px; text-decoration: none; border-left: 3px solid transparent; font-size: .97rem; } .admin-nav a:hover { border-left-color: var(--accent); }
.who { display: flex; gap: 18px; align-items: center; font-size: .9rem; color: var(--muted); }
form.inline { display: inline; } .row-actions { text-align: right; white-space: nowrap; } .row-actions form { margin-left: 14px; }
.flash { padding: 10px 14px; border-left: 4px solid #2B8A3E; background: var(--surface); } .flash.err { border-left-color: var(--accent); }
.form { max-width: 820px; } .narrow-form { max-width: 420px; } .field { margin-bottom: 18px; border: 0; padding: 0; min-width: 0; }
.field legend { font: 600 1.1rem var(--body); padding: 0; margin-bottom: 8px; } .help { font-size: .88rem; color: var(--muted); margin: 4px 0 0; }
.form label > span { display: block; font-size: .9rem; font-weight: 500; margin: 0 0 4px; } .figs label > span { margin-top: 12px; }
textarea { resize: vertical; line-height: 1.5; } .mono { font: .88rem/1.5 var(--mono); }
.checks { display: flex; flex-wrap: wrap; gap: 6px 20px; } .check { display: block; margin: 8px 0; }
.current { display: flex; gap: 14px; align-items: center; margin-bottom: 8px; } .current img { max-height: 70px; max-width: 160px; border: 1px solid var(--line); background: #fff; }
.boxed { padding: 18px 20px; background: var(--surface); border: 1px solid var(--line); }
.actions.top { margin: 0 0 20px; align-items: center; } .actions.sticky { position: sticky; bottom: 0; background: var(--bg); padding: 12px 0; border-top: 1px solid var(--line); }
.status { color: var(--muted); font-size: .92rem; }
.seg { display: inline-flex; margin-left: 12px; border: 1px solid var(--line-strong); border-radius: 4px; overflow: hidden; } .seg a { padding: 7px 12px; font-size: .9rem; text-decoration: none; } .seg a[aria-current] { background: var(--ink); color: var(--surface); }
table.grid { width: 100%; border-collapse: collapse; background: var(--surface); border: 1px solid var(--line); font-size: .96rem; }
.grid th { text-align: left; font-size: .85rem; color: var(--muted); font-weight: 500; } .grid th, .grid td { padding: 10px 12px; border-bottom: 1px solid var(--line); vertical-align: top; }
.grid small { color: var(--muted); } .grid .warn { color: var(--accent); }
.tiles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; max-width: 720px; } .tiles li { padding: 14px 16px; background: var(--surface); border: 1px solid var(--line); } .tiles strong { font: 600 1.9rem var(--display); margin-right: 6px; }
.checklist li { padding: 8px 0 8px 26px; position: relative; max-width: 70ch; } .checklist li::before { content: ""; position: absolute; left: 4px; top: 15px; width: 10px; height: 10px; border-radius: 50%; background: #2B8A3E; } .checklist li.bad::before { background: var(--accent); }
code { font: .9em var(--mono); background: var(--surface); padding: 1px 4px; border: 1px solid var(--line); }
.fig-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; }
.fig-opt { display: flex; flex-direction: column; gap: 6px; padding: 10px; background: var(--surface); border: 2px solid var(--line); cursor: pointer; font-size: .85rem; }
.fig-opt:has(input:checked) { border-color: var(--accent); } .fig-opt img { background: #fff; max-height: 130px; object-fit: contain; width: 100%; } .fig-opt span { margin: 0 !important; font-weight: 400 !important; } .fig-opt small { color: var(--muted); }
.log { background: var(--surface); border: 1px solid var(--line); padding: 14px; font: .85rem/1.5 var(--mono); max-height: 360px; overflow: auto; white-space: pre-wrap; }
@media (max-width: 860px) { .admin-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; } .admin-nav ul { display: flex; flex-wrap: wrap; } .tiles { grid-template-columns: 1fr; } }
