From 95abd2e3370d72dcdc379aa256fe98b8407cec99 Mon Sep 17 00:00:00 2001 From: gsinghpal Date: Sat, 30 May 2026 21:38:22 -0400 Subject: [PATCH] style(fusion_clock): payslip list/detail, 4-item nav, and sign-out styles Co-Authored-By: Claude Opus 4.8 --- fusion_clock/static/src/css/portal_clock.css | 88 ++++++++++++++++++++ 1 file changed, 88 insertions(+) diff --git a/fusion_clock/static/src/css/portal_clock.css b/fusion_clock/static/src/css/portal_clock.css index dc4c377f..029e8290 100644 --- a/fusion_clock/static/src/css/portal_clock.css +++ b/fusion_clock/static/src/css/portal_clock.css @@ -1661,3 +1661,91 @@ html.o_dark #fclk-portal-fab { width: 260px; } } + +/* ============================================================ + Employee portal — Payslips, 4-item nav, sign out + (uses the --fclk-* palette above, so light/dark just works) + ============================================================ */ + +/* Keep 4 nav items comfortable on narrow phones */ +.fclk-nav-bar .fclk-nav-item { min-width: 64px; } + +/* Sign out (clock header, top-right) */ +.fclk-header { position: relative; } +.fclk-signout { + position: absolute; + top: 0; + right: 0; + display: inline-flex; + align-items: center; + justify-content: center; + width: 38px; + height: 38px; + border-radius: 10px; + color: var(--fclk-text-muted); + background: var(--fclk-card); + border: 1px solid var(--fclk-card-border); + text-decoration: none; +} +.fclk-signout:hover { color: var(--fclk-text); } + +/* Payslip list rows (extend .fclk-report-item) */ +.fclk-payslip-item { text-decoration: none; color: inherit; cursor: pointer; } +.fclk-payslip-status { + font-size: 12px; + font-weight: 600; + padding: 3px 10px; + border-radius: 999px; + white-space: nowrap; +} +.fclk-payslip-status--paid { background: var(--fclk-green-glow); color: var(--fclk-green); } +.fclk-payslip-status--done { background: var(--fclk-hover-bg); color: var(--fclk-text-muted); } + +/* Payslip detail (inline paystub) */ +.fclk-payslip-detail-header .fclk-payslip-back { + display: inline-block; + font-size: 13px; + color: var(--fclk-green); + text-decoration: none; + margin-bottom: 6px; +} +.fclk-payslip-net { + display: flex; + align-items: center; + justify-content: space-between; + margin-bottom: 16px; +} +.fclk-payslip-net-label { font-size: 13px; color: var(--fclk-text-muted); } +.fclk-payslip-net-value { font-size: 26px; font-weight: 700; color: var(--fclk-green); } +.fclk-payslip-section { margin-bottom: 16px; } +.fclk-payslip-section-title { + font-size: 13px; + text-transform: uppercase; + letter-spacing: .04em; + color: var(--fclk-text-muted); + margin: 0 0 10px; +} +.fclk-payslip-row { + display: flex; + align-items: center; + justify-content: space-between; + padding: 8px 0; + font-size: 14px; + color: var(--fclk-text); + border-bottom: 1px solid var(--fclk-card-border); +} +.fclk-payslip-row:last-child { border-bottom: none; } +.fclk-payslip-row--total { font-weight: 700; } +.fclk-payslip-pdf-btn { + display: flex; + align-items: center; + justify-content: center; + width: 100%; + padding: 14px; + margin-bottom: 90px; /* clear the fixed bottom nav */ + border-radius: 12px; + background: var(--fclk-green); + color: #fff; + font-weight: 600; + text-decoration: none; +}