/* Certificates and refresher reminders: public verify page, My certificates, admin screens. Tokens only (both themes). */
.mono { font-family:Consolas, "Cascadia Mono", "Segoe UI Mono", Menlo, monospace; letter-spacing:.04em; }
.small { font-size:14px; }
.mt-12 { margin-top:12px; }
.cell-actions { text-align:right; white-space:nowrap; }
.cert-due { color:var(--warn); font-weight:600; }
.cert-center { justify-content:center; }

/* Public verify */
.verify-wrap { padding-top:40px; padding-bottom:64px; }
.verify-card { max-width:720px; margin:0 auto; }
.verify-card h1 { font-size:28px; }
.verify-row { display:flex; gap:8px; flex-wrap:wrap; }
.verify-input { flex:1 1 220px; min-width:0; font-family:Consolas, "Cascadia Mono", Menlo, monospace; letter-spacing:.12em; text-transform:uppercase; font-size:19px; }
.verify-input::placeholder { text-transform:none; letter-spacing:normal; font-family:Calibri, "Segoe UI", Arial, sans-serif; font-size:17px; }
.verify-status { display:flex; gap:14px; align-items:flex-start; border:1px solid; border-radius:var(--radius); padding:16px; margin-bottom:20px; }
.verify-status svg { width:36px; height:36px; flex-shrink:0; border-radius:50%; padding:6px; }
.verify-status h1 { font-size:24px; margin:2px 0 4px; }
.verify-status p { margin:0; }
.verify-ok { background:var(--ok-soft); border-color:var(--ok); }
.verify-ok svg { color:var(--ok); border:2px solid var(--ok); }
.verify-warn { background:var(--warn-soft); border-color:var(--warn); }
.verify-warn svg { color:var(--warn); border:2px solid var(--warn); }
.verify-bad { background:var(--bad-soft); border-color:var(--bad); }
.verify-bad svg { color:var(--bad); border:2px solid var(--bad); }
.verify-details { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:14px 24px; margin:0 0 24px; }
.verify-details div { min-width:0; }
.verify-details dt, .cert-dl dt { font-size:13px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:var(--muted); }
.verify-details dd, .cert-dl dd { margin:2px 0 0; overflow-wrap:anywhere; }
.verify-wide { grid-column:1 / -1; }
.verify-again { font-size:18px; padding-top:18px; border-top:1px solid var(--border); }
@media (max-width: 560px) { .verify-details { grid-template-columns:1fr; } .verify-row .btn { width:100%; } }

/* Admin */
.stat-link { text-decoration:none; color:var(--text); }
.stat-link:hover { border-color:var(--brand); color:var(--text); }
.cert-filters select { width:auto; max-width:100%; }
.card-title { font-size:19px; display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
.cert-grid { display:grid; grid-template-columns:minmax(0, 3fr) minmax(0, 2fr); gap:16px; margin-bottom:16px; align-items:start; }
.cert-grid > .card + .card, .cert-side > .card + .card { margin-top:16px; }
.cert-side { display:block; }
@media (max-width: 900px) { .cert-grid { grid-template-columns:minmax(0, 1fr); } }
.cert-dl { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:14px 24px; margin:0; }
@media (max-width: 560px) { .cert-dl { grid-template-columns:minmax(0, 1fr); } }
.cert-form { max-width:760px; }
.cert-form-row { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:0 16px; }
@media (max-width: 560px) { .cert-form-row { grid-template-columns:minmax(0, 1fr); } }
.cert-fieldset { border:1px solid var(--border); border-radius:var(--radius); padding:12px 16px 0; margin:0 0 16px; }
.cert-fieldset legend { font-weight:700; padding:0 6px; }
.cert-history { list-style:none; padding:0; margin:0; }
.cert-history li { padding:8px 0; border-bottom:1px solid var(--border); }
.cert-history li:last-child { border-bottom:0; }
.cert-summary { margin-bottom:16px; }
.cert-summary-row { display:flex; gap:24px; justify-content:space-between; flex-wrap:wrap; }
.cert-summary-side { display:flex; flex-direction:column; align-items:flex-start; gap:4px; }
.cert-list { margin:0; padding-left:20px; }
.cert-list li { margin-bottom:4px; }
section.card + section.card, .cert-summary + section.card { margin-top:16px; }
