Tier model: registered=basic (recipes, 12 photos, QR), PRO=verified or admin-activated (HSL, tools/gradient mask, RAW, export > source longest edge); admin users table gets Activated Pro column

This commit is contained in:
2026-09-30 11:50:28 +07:00
parent 35d8d57984
commit 74c0b2747f
10 changed files with 264 additions and 122 deletions
+27
View File
@@ -1261,7 +1261,34 @@ input[type="range"] { width: 100%; accent-color: var(--accent); }
.adm-side-item:hover { background: var(--bg-elev); }
.adm-side-item.on { background: var(--accent); color: var(--accent-fg); font-weight: 600; }
.adm-pane { flex: 1 1 auto; min-width: 0; padding: 14px 16px; }
/* The users table: a frame around every cell, and a head that reads as a head —
the heading face, smaller and dimmer than the rows under it. The accounts are
what the eye should land on, so the header steps back. */
.adm-table-wrap { overflow-x: auto; }
.adm-table { border-collapse: collapse; width: 100%; }
.adm-table th,
.adm-table td {
border: 1px solid var(--border);
padding: 6px 9px;
text-align: left;
vertical-align: middle;
}
.adm-table th {
background: var(--bg-sunken);
color: var(--text-dim);
font-family: var(--font-heading);
font-size: 11px;
font-weight: 600;
letter-spacing: 0.04em;
text-transform: uppercase;
white-space: nowrap;
}
.adm-table tbody tr:hover { background: var(--bg-sunken); }
/* The PRO box: one narrow centred column, and a box big enough to aim at. */
.adm-table th.adm-pro,
.adm-table td.adm-pro { width: 1%; text-align: center; white-space: nowrap; }
.adm-table td.adm-pro input { display: block; margin: 0 auto; cursor: pointer; }
.adm-table td.adm-pro input:disabled { cursor: default; }
/* Bulk selection: the three controls above the users table, and the checkbox
column at its head (narrow so the picture column keeps the width). */
.adm-bulk { display: flex; align-items: center; gap: 8px; margin: 0 0 12px; }