From 3e158e780b287f2b29fd86c772300579be99156e Mon Sep 17 00:00:00 2001 From: Hermes Agent Date: Wed, 3 Jun 2026 16:31:01 +0800 Subject: [PATCH] fix(portal): prevent .hint description from being covered by 5 .hint spans (ADMIN TOKEN / PACK PATH / PROVIDER ID / SMOKE TEST MODEL / COMMIT MESSAGE) were being visually overlapped by their sibling boxes because: - .hint was inline, padding 10px 12px with background+border - was inline-block - label was display:block, font-size 12px - the inline .hint box was being squeezed into the same flow line as the input, so its last 8-10px were covered Verified via getBoundingClientRect + elementFromPoint probe before fix: hint.top < input.bottom (5 fields) = hint overlapped by input Fix: force .hint to display:block with margin-top:6px so it always sits below its input as a separate block; also force label > input/select/textarea to display:block width:100% so the form field always stretches and never inlines with the field label text. Verified after fix: 0 hints overlapped on providers.html (the worst case with 8 .hint spans). CSS-only change; no HTML edits. Affects all 8 portal pages. Smoke + frontend assets tests still PASS. --- deploy/tksea-portal/portal.css | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/deploy/tksea-portal/portal.css b/deploy/tksea-portal/portal.css index 03f747c7..c269c8d6 100644 --- a/deploy/tksea-portal/portal.css +++ b/deploy/tksea-portal/portal.css @@ -984,7 +984,17 @@ pre code { color: inherit; } .cta-link { display: inline-flex; align-items: center; gap: 6px; color: var(--color-primary); font-weight: 700; font-size: 13px; text-decoration: none; } .cta-link:hover { color: var(--teal-400); text-decoration: underline; } .footer-note { font-size: 12px; color: var(--text-muted); margin-top: 24px; padding-top: 16px; border-top: 1px solid var(--border-subtle); } -.hint { font-size: 12px; color: var(--text-muted); line-height: 1.6; padding: 10px 12px; border-radius: var(--r-sm); background: var(--bg-elev-2); border: 1px solid var(--border-subtle); } +/* .hint sits inside a