337 lines
21 KiB
HTML
337 lines
21 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en">
|
||
<head>
|
||
<meta charset="UTF-8">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
<title>My Dashboard — HR Portal</title>
|
||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">
|
||
<style>
|
||
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
|
||
body { font-family: 'Inter', sans-serif; background: #FAFAFA; color: #111827; display: flex; min-height: 100vh; }
|
||
.sidebar { width: 240px; min-height: 100vh; background: #FFFFFF; border-right: 1px solid #E5E7EB; display: flex; flex-direction: column; position: fixed; top: 0; left: 0; bottom: 0; z-index: 50; }
|
||
.sidebar-logo { padding: 20px 20px 16px; display: flex; align-items: center; gap: 10px; font-size: 18px; font-weight: 700; color: #111827; border-bottom: 1px solid #F3F4F6; }
|
||
.logo-icon { width: 32px; height: 32px; background: #4F46E5; border-radius: 8px; display: flex; align-items: center; justify-content: center; }
|
||
.logo-icon svg { width: 16px; height: 16px; }
|
||
.sidebar-nav { flex: 1; padding: 12px 0; overflow-y: auto; }
|
||
.nav-item { display: flex; align-items: center; gap: 10px; padding: 9px 16px; margin: 1px 8px; border-radius: 6px; font-size: 14px; font-weight: 500; color: #6B7280; text-decoration: none; cursor: pointer; }
|
||
.nav-item:hover { background: #F9FAFB; color: #111827; }
|
||
.nav-item.active { background: #EEF2FF; color: #4F46E5; font-weight: 600; }
|
||
.nav-item svg { width: 18px; height: 18px; flex-shrink: 0; }
|
||
.sidebar-footer { padding: 16px; border-top: 1px solid #F3F4F6; }
|
||
.user-row { display: flex; align-items: center; gap: 10px; padding: 8px; }
|
||
.user-avatar { width: 34px; height: 34px; border-radius: 50%; background: #10B981; color: #FFF; display: flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 600; }
|
||
.user-name { font-size: 13px; font-weight: 600; color: #111827; }
|
||
.user-role { font-size: 11px; color: #9CA3AF; }
|
||
.logout-btn { width: 100%; margin-top: 8px; padding: 7px; border: 1.5px solid #E5E7EB; border-radius: 6px; background: transparent; color: #6B7280; font-size: 13px; cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 6px; }
|
||
.main-wrapper { margin-left: 240px; flex: 1; display: flex; flex-direction: column; }
|
||
.topnav { height: 64px; background: #FFFFFF; border-bottom: 1px solid #E5E7EB; display: flex; align-items: center; gap: 16px; padding: 0 28px; position: sticky; top: 0; z-index: 40; }
|
||
.topnav-name { font-size: 14px; font-weight: 500; color: #374151; }
|
||
.topnav-actions { margin-left: auto; display: flex; gap: 8px; align-items: center; }
|
||
.icon-btn { width: 36px; height: 36px; border-radius: 8px; border: 1.5px solid #E5E7EB; background: #FFFFFF; display: flex; align-items: center; justify-content: center; cursor: pointer; position: relative; }
|
||
.icon-btn svg { width: 18px; height: 18px; color: #6B7280; }
|
||
.notif-badge { position: absolute; top: -4px; right: -4px; background: #EF4444; color: #FFF; font-size: 10px; font-weight: 700; width: 16px; height: 16px; border-radius: 50%; display: flex; align-items: center; justify-content: center; border: 2px solid #FFFFFF; }
|
||
.topnav-avatar { width: 36px; height: 36px; border-radius: 50%; background: #10B981; color: #FFF; display: flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 600; cursor: pointer; }
|
||
.content { padding: 28px; }
|
||
|
||
/* WELCOME */
|
||
.welcome { background: linear-gradient(135deg, #10B981 0%, #059669 100%); border-radius: 12px; padding: 24px 28px; color: #FFF; margin-bottom: 20px; display: flex; align-items: center; justify-content: space-between; }
|
||
.welcome-title { font-size: 20px; font-weight: 700; margin-bottom: 4px; }
|
||
.welcome-sub { font-size: 14px; color: rgba(255,255,255,0.8); }
|
||
.checkin-btn { padding: 10px 22px; background: rgba(255,255,255,0.2); border: 1px solid rgba(255,255,255,0.4); border-radius: 8px; color: #FFF; font-size: 14px; font-weight: 600; cursor: pointer; display: flex; align-items: center; gap: 8px; }
|
||
.checkin-btn svg { width: 16px; height: 16px; }
|
||
|
||
/* QUICK ACTIONS */
|
||
.quick-actions { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-bottom: 24px; }
|
||
.quick-action { background: #FFFFFF; border-radius: 10px; border: 1px solid #E5E7EB; box-shadow: 0 1px 3px rgba(0,0,0,0.06); padding: 16px 20px; cursor: pointer; transition: all 0.15s; text-align: center; text-decoration: none; }
|
||
.quick-action:hover { box-shadow: 0 4px 16px rgba(0,0,0,0.1); transform: translateY(-2px); border-color: #C7D2FE; }
|
||
.qa-icon { width: 40px; height: 40px; border-radius: 10px; display: flex; align-items: center; justify-content: center; margin: 0 auto 10px; }
|
||
.qa-icon svg { width: 20px; height: 20px; }
|
||
.qa-label { font-size: 13px; font-weight: 500; color: #374151; }
|
||
|
||
/* TWO COL */
|
||
.two-col { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 24px; }
|
||
.card { background: #FFFFFF; border-radius: 10px; border: 1px solid #E5E7EB; box-shadow: 0 1px 3px rgba(0,0,0,0.06); overflow: hidden; }
|
||
.card-header-row { padding: 14px 18px; border-bottom: 1px solid #F3F4F6; display: flex; align-items: center; justify-content: space-between; }
|
||
.card-title { font-size: 14px; font-weight: 600; color: #111827; }
|
||
.card-action { font-size: 12px; color: #4F46E5; cursor: pointer; font-weight: 500; text-decoration: none; }
|
||
|
||
/* LEAVE BALANCE */
|
||
.lb-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; padding: 14px; }
|
||
.lb-item { background: #F9FAFB; border-radius: 8px; padding: 12px; text-align: center; }
|
||
.lb-val { font-size: 22px; font-weight: 700; color: #111827; }
|
||
.lb-type { font-size: 11px; color: #9CA3AF; margin-top: 2px; }
|
||
.lb-sub { font-size: 11px; margin-top: 6px; }
|
||
|
||
/* MINI TABLE */
|
||
.mini-table { width: 100%; border-collapse: collapse; }
|
||
.mini-table th { padding: 8px 16px; font-size: 11px; font-weight: 600; color: #9CA3AF; text-align: left; text-transform: uppercase; letter-spacing: 0.4px; border-bottom: 1px solid #F3F4F6; }
|
||
.mini-table td { padding: 10px 16px; font-size: 13px; color: #374151; border-bottom: 1px solid #F9FAFB; }
|
||
.mini-table tr:last-child td { border-bottom: none; }
|
||
.badge { padding: 2px 8px; border-radius: 4px; font-size: 11px; font-weight: 600; }
|
||
.badge-green { background: #ECFDF5; color: #059669; }
|
||
.badge-yellow { background: #FFFBEB; color: #D97706; }
|
||
.badge-red { background: #FEF2F2; color: #DC2626; }
|
||
.badge-blue { background: #EFF6FF; color: #3B82F6; }
|
||
|
||
/* ATTENDANCE MINI CALENDAR */
|
||
.cal-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 3px; padding: 14px; }
|
||
.cal-day-label { font-size: 10px; font-weight: 600; color: #9CA3AF; text-align: center; padding: 4px; text-transform: uppercase; }
|
||
.cal-day { height: 28px; display: flex; align-items: center; justify-content: center; border-radius: 5px; font-size: 12px; font-weight: 500; }
|
||
.cal-day.empty { }
|
||
.cal-day.present { background: #ECFDF5; color: #059669; }
|
||
.cal-day.leave { background: #EFF6FF; color: #3B82F6; }
|
||
.cal-day.absent { background: #FEF2F2; color: #DC2626; }
|
||
.cal-day.today { background: #4F46E5; color: #FFF; font-weight: 700; }
|
||
.cal-day.future { color: #D1D5DB; }
|
||
|
||
/* PAYSLIP CARD */
|
||
.payslip-card { padding: 16px 18px; }
|
||
.payslip-month { font-size: 13px; color: #9CA3AF; margin-bottom: 4px; }
|
||
.payslip-amount { font-size: 28px; font-weight: 700; color: #111827; margin-bottom: 4px; }
|
||
.payslip-net { font-size: 12px; color: #9CA3AF; margin-bottom: 14px; }
|
||
.payslip-breakdown { display: flex; gap: 16px; margin-bottom: 16px; }
|
||
.payslip-item {}
|
||
.payslip-item-label { font-size: 11px; color: #9CA3AF; font-weight: 600; text-transform: uppercase; letter-spacing: 0.3px; }
|
||
.payslip-item-val { font-size: 14px; font-weight: 600; color: #374151; margin-top: 2px; }
|
||
.btn-download { width: 100%; padding: 9px; background: #EEF2FF; color: #4F46E5; border: 1.5px solid #C7D2FE; border-radius: 6px; font-size: 13px; font-weight: 600; cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 6px; transition: all 0.15s; }
|
||
.btn-download:hover { background: #4F46E5; color: #FFF; }
|
||
|
||
/* ANNOUNCEMENTS */
|
||
.announce-card { background: #FFFFFF; border-radius: 10px; border: 1px solid #E5E7EB; box-shadow: 0 1px 3px rgba(0,0,0,0.06); overflow: hidden; }
|
||
.announce-item { padding: 14px 18px; border-bottom: 1px solid #F9FAFB; }
|
||
.announce-item:last-child { border-bottom: none; }
|
||
.announce-badge { display: inline-block; background: #EEF2FF; color: #4F46E5; font-size: 10px; font-weight: 600; padding: 2px 7px; border-radius: 3px; text-transform: uppercase; margin-bottom: 6px; }
|
||
.announce-title { font-size: 13px; font-weight: 600; color: #111827; margin-bottom: 3px; }
|
||
.announce-body { font-size: 12px; color: #6B7280; line-height: 1.5; }
|
||
.announce-time { font-size: 11px; color: #9CA3AF; margin-top: 6px; }
|
||
</style>
|
||
</head>
|
||
<body>
|
||
|
||
<aside class="sidebar">
|
||
<div class="sidebar-logo"><div class="logo-icon"><svg viewBox="0 0 24 24" fill="none" stroke="#FFFFFF" stroke-width="2"><path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"/><circle cx="9" cy="7" r="4"/><path d="M23 21v-2a4 4 0 0 0-3-3.87"/><path d="M16 3.13a4 4 0 0 1 0 7.75"/></svg></div>HR Portal</div>
|
||
<nav class="sidebar-nav">
|
||
<a href="18-employee-dashboard.html" class="nav-item active"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><rect x="3" y="3" width="7" height="7"/><rect x="14" y="3" width="7" height="7"/><rect x="14" y="14" width="7" height="7"/><rect x="3" y="14" width="7" height="7"/></svg>My Dashboard</a>
|
||
<a href="19-my-leave.html" class="nav-item"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><rect x="3" y="4" width="18" height="18" rx="2"/><line x1="16" y1="2" x2="16" y2="6"/><line x1="8" y1="2" x2="8" y2="6"/><line x1="3" y1="10" x2="21" y2="10"/></svg>My Leave</a>
|
||
<a href="#" class="nav-item"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="12" cy="12" r="10"/><polyline points="12 6 12 12 16 14"/></svg>My Attendance</a>
|
||
<a href="#" class="nav-item"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><rect x="2" y="5" width="20" height="14" rx="2"/><line x1="2" y1="10" x2="22" y2="10"/></svg>My Payslips</a>
|
||
<a href="#" class="nav-item"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/></svg>Expense Claims</a>
|
||
<a href="06-employee-profile.html" class="nav-item"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"/><circle cx="12" cy="7" r="4"/></svg>My Profile</a>
|
||
<a href="20-org-chart.html" class="nav-item"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><rect x="9" y="1" width="6" height="5" rx="1"/><rect x="1" y="14" width="6" height="5" rx="1"/><rect x="17" y="14" width="6" height="5" rx="1"/><path d="M4 14v-4a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v4"/><line x1="12" y1="6" x2="12" y2="9"/></svg>Org Chart</a>
|
||
</nav>
|
||
<div class="sidebar-footer">
|
||
<div class="user-row">
|
||
<div class="user-avatar">JD</div>
|
||
<div><div class="user-name">John Davis</div><div class="user-role">Software Engineer</div></div>
|
||
</div>
|
||
<button class="logout-btn">Sign Out</button>
|
||
</div>
|
||
</aside>
|
||
|
||
<div class="main-wrapper">
|
||
<header class="topnav">
|
||
<span class="topnav-name">Employee Portal</span>
|
||
<div class="topnav-actions">
|
||
<div class="icon-btn"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M22 17H2a3 3 0 0 0 3-3V9a7 7 0 0 1 14 0v5a3 3 0 0 0 3 3zm-8.27 4a2 2 0 0 1-3.46 0"/></svg><span class="notif-badge">2</span></div>
|
||
<div class="topnav-avatar">JD</div>
|
||
</div>
|
||
</header>
|
||
|
||
<main class="content">
|
||
<!-- WELCOME -->
|
||
<div class="welcome">
|
||
<div>
|
||
<div class="welcome-title">Good morning, John! Ready for the day?</div>
|
||
<div class="welcome-sub">Friday, May 9, 2026 · You haven't checked in yet today</div>
|
||
</div>
|
||
<button class="checkin-btn">
|
||
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polyline points="20 6 9 17 4 12"/></svg>
|
||
Check In Now
|
||
</button>
|
||
</div>
|
||
|
||
<!-- QUICK ACTIONS -->
|
||
<div class="quick-actions">
|
||
<a href="19-my-leave.html" class="quick-action">
|
||
<div class="qa-icon" style="background:#EEF2FF;">
|
||
<svg viewBox="0 0 24 24" fill="none" stroke="#4F46E5" stroke-width="2"><rect x="3" y="4" width="18" height="18" rx="2"/><line x1="16" y1="2" x2="16" y2="6"/><line x1="8" y1="2" x2="8" y2="6"/><line x1="3" y1="10" x2="21" y2="10"/></svg>
|
||
</div>
|
||
<div class="qa-label">Request Leave</div>
|
||
</a>
|
||
<div class="quick-action">
|
||
<div class="qa-icon" style="background:#ECFDF5;">
|
||
<svg viewBox="0 0 24 24" fill="none" stroke="#10B981" stroke-width="2"><circle cx="12" cy="12" r="10"/><polyline points="12 6 12 12 16 14"/></svg>
|
||
</div>
|
||
<div class="qa-label">Check In</div>
|
||
</div>
|
||
<div class="quick-action">
|
||
<div class="qa-icon" style="background:#FFFBEB;">
|
||
<svg viewBox="0 0 24 24" fill="none" stroke="#F59E0B" stroke-width="2"><rect x="2" y="5" width="20" height="14" rx="2"/><line x1="2" y1="10" x2="22" y2="10"/></svg>
|
||
</div>
|
||
<div class="qa-label">View Payslips</div>
|
||
</div>
|
||
<a href="06-employee-profile.html" class="quick-action">
|
||
<div class="qa-icon" style="background:#F5F3FF;">
|
||
<svg viewBox="0 0 24 24" fill="none" stroke="#7C3AED" stroke-width="2"><path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"/><circle cx="12" cy="7" r="4"/></svg>
|
||
</div>
|
||
<div class="qa-label">My Profile</div>
|
||
</a>
|
||
</div>
|
||
|
||
<!-- TWO COL -->
|
||
<div class="two-col">
|
||
<!-- LEFT -->
|
||
<div>
|
||
<!-- LEAVE BALANCE -->
|
||
<div class="card" style="margin-bottom:16px;">
|
||
<div class="card-header-row">
|
||
<span class="card-title">Leave Balance</span>
|
||
<a href="19-my-leave.html" class="card-action">View all</a>
|
||
</div>
|
||
<div class="lb-grid">
|
||
<div class="lb-item">
|
||
<div class="lb-val" style="color:#4F46E5;">14</div>
|
||
<div class="lb-type">Annual</div>
|
||
<div class="lb-sub" style="color:#9CA3AF;">of 20 days</div>
|
||
</div>
|
||
<div class="lb-item">
|
||
<div class="lb-val" style="color:#F59E0B;">8</div>
|
||
<div class="lb-type">Sick</div>
|
||
<div class="lb-sub" style="color:#9CA3AF;">of 10 days</div>
|
||
</div>
|
||
<div class="lb-item">
|
||
<div class="lb-val" style="color:#10B981;">3</div>
|
||
<div class="lb-type">Casual</div>
|
||
<div class="lb-sub" style="color:#9CA3AF;">of 5 days</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- RECENT LEAVE REQUESTS -->
|
||
<div class="card">
|
||
<div class="card-header-row">
|
||
<span class="card-title">My Leave Requests</span>
|
||
<a href="19-my-leave.html" class="card-action">View all</a>
|
||
</div>
|
||
<table class="mini-table">
|
||
<thead><tr><th>Type</th><th>Dates</th><th>Status</th></tr></thead>
|
||
<tbody>
|
||
<tr>
|
||
<td>Annual</td>
|
||
<td style="font-size:12px;">Apr 7–11</td>
|
||
<td><span class="badge badge-green">Approved</span></td>
|
||
</tr>
|
||
<tr>
|
||
<td>Sick</td>
|
||
<td style="font-size:12px;">Mar 22</td>
|
||
<td><span class="badge badge-green">Approved</span></td>
|
||
</tr>
|
||
<tr>
|
||
<td>Annual</td>
|
||
<td style="font-size:12px;">May 26–28</td>
|
||
<td><span class="badge badge-yellow">Pending</span></td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- RIGHT -->
|
||
<div>
|
||
<!-- ATTENDANCE MINI CALENDAR -->
|
||
<div class="card" style="margin-bottom:16px;">
|
||
<div class="card-header-row">
|
||
<span class="card-title">May 2026 Attendance</span>
|
||
<span class="card-action">Full view</span>
|
||
</div>
|
||
<div class="cal-grid">
|
||
<div class="cal-day-label">S</div><div class="cal-day-label">M</div><div class="cal-day-label">T</div><div class="cal-day-label">W</div><div class="cal-day-label">T</div><div class="cal-day-label">F</div><div class="cal-day-label">S</div>
|
||
<div class="cal-day empty"></div>
|
||
<div class="cal-day empty"></div>
|
||
<div class="cal-day empty"></div>
|
||
<div class="cal-day empty"></div>
|
||
<div class="cal-day empty"></div>
|
||
<div class="cal-day present">1</div>
|
||
<div class="cal-day future">2</div>
|
||
<div class="cal-day future">3</div>
|
||
<div class="cal-day present">4</div>
|
||
<div class="cal-day present">5</div>
|
||
<div class="cal-day present">6</div>
|
||
<div class="cal-day present">7</div>
|
||
<div class="cal-day present">8</div>
|
||
<div class="cal-day today">9</div>
|
||
<div class="cal-day future">10</div>
|
||
<div class="cal-day future">11</div>
|
||
<div class="cal-day future">12</div>
|
||
<div class="cal-day future">13</div>
|
||
<div class="cal-day future">14</div>
|
||
<div class="cal-day future">15</div>
|
||
<div class="cal-day future">16</div>
|
||
</div>
|
||
<div style="display:flex;gap:12px;padding:0 14px 12px;font-size:11px;color:#9CA3AF;">
|
||
<span style="display:flex;align-items:center;gap:4px;"><span style="width:8px;height:8px;border-radius:2px;background:#ECFDF5;display:inline-block;"></span>Present</span>
|
||
<span style="display:flex;align-items:center;gap:4px;"><span style="width:8px;height:8px;border-radius:2px;background:#EFF6FF;display:inline-block;"></span>Leave</span>
|
||
<span style="display:flex;align-items:center;gap:4px;"><span style="width:8px;height:8px;border-radius:2px;background:#4F46E5;display:inline-block;"></span>Today</span>
|
||
</div>
|
||
</div>
|
||
<!-- LATEST PAYSLIP -->
|
||
<div class="card">
|
||
<div class="card-header-row">
|
||
<span class="card-title">Latest Payslip</span>
|
||
</div>
|
||
<div class="payslip-card">
|
||
<div class="payslip-month">May 2026</div>
|
||
<div class="payslip-amount">$4,200.00</div>
|
||
<div class="payslip-net">Net pay after deductions</div>
|
||
<div class="payslip-breakdown">
|
||
<div class="payslip-item">
|
||
<div class="payslip-item-label">Gross</div>
|
||
<div class="payslip-item-val">$5,000</div>
|
||
</div>
|
||
<div class="payslip-item">
|
||
<div class="payslip-item-label">Tax</div>
|
||
<div class="payslip-item-val">-$620</div>
|
||
</div>
|
||
<div class="payslip-item">
|
||
<div class="payslip-item-label">Benefits</div>
|
||
<div class="payslip-item-val">-$180</div>
|
||
</div>
|
||
</div>
|
||
<button class="btn-download">
|
||
<svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"/><polyline points="7 10 12 15 17 10"/><line x1="12" y1="15" x2="12" y2="3"/></svg>
|
||
Download PDF
|
||
</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- ANNOUNCEMENTS -->
|
||
<div class="card-header-row" style="margin-bottom:12px;padding:0;">
|
||
<span style="font-size:16px;font-weight:600;color:#111827;">Announcements</span>
|
||
</div>
|
||
<div class="announce-card">
|
||
<div class="announce-item">
|
||
<div class="announce-badge">Company</div>
|
||
<div class="announce-title">Q2 Performance Reviews Starting May 15</div>
|
||
<div class="announce-body">Self-assessments open May 10. Please complete your self-review by May 18 and peer reviews by May 20.</div>
|
||
<div class="announce-time">2 days ago</div>
|
||
</div>
|
||
<div class="announce-item">
|
||
<div class="announce-badge">Policy</div>
|
||
<div class="announce-title">Updated Remote Work Policy Effective June 1</div>
|
||
<div class="announce-body">Employees may work remotely up to 3 days per week with manager approval. Full details in the HR handbook.</div>
|
||
<div class="announce-time">May 7, 2026</div>
|
||
</div>
|
||
<div class="announce-item">
|
||
<div class="announce-badge">Benefits</div>
|
||
<div class="announce-title">Open Enrollment for Health Benefits — Closes May 31</div>
|
||
<div class="announce-body">Annual open enrollment is now open. Review your options and make changes in the benefits portal before the deadline.</div>
|
||
<div class="announce-time">May 1, 2026</div>
|
||
</div>
|
||
</div>
|
||
</main>
|
||
</div>
|
||
|
||
</body>
|
||
</html>
|