diff --git a/capstone project/certificates.css b/capstone project/certificates.css new file mode 100644 index 0000000..2c0c6c8 --- /dev/null +++ b/capstone project/certificates.css @@ -0,0 +1,519 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +body { + font-family: "Poppins", sans-serif; + font-weight: 400; + font-size: 14px; +} + +.main-container { + display: flex; +} + +/* ── SIDEBAR ── */ +.sidebar { + width: 200px; + min-height: 100vh; + background: #1f3a5f; + color: #ffffff; + padding: 0 20px 20px 20px; + position: fixed; + top: 0; + left: 0; + overflow-y: auto; + z-index: 100; + transition: transform 0.3s ease; +} + +.sidebar a:hover li { + background: rgba(255, 255, 255, 0.15); + border-radius: 8px; + padding-left: 16px; + transition: all 0.2s ease; +} + +.sidebar a.active li { + background: #057df2; + border-radius: 3px; + padding-left: 13px; +} + +.logo { + margin-top: 0; + margin-bottom: 30px; + padding: 0 0px 24px; + height: 130px; + width: 150px; + object-fit: cover; +} + +.sidebar a { + list-style: none; + text-decoration: none; + color: #ffffff; +} + +.sidebar li { + padding: 12px; + margin-bottom: 5px; + cursor: pointer; +} + +/* ── HAMBURGER ── */ +.hamburger { + display: none; + flex-direction: column; + justify-content: center; + gap: 5px; + cursor: pointer; + background: none; + border: none; + padding: 4px; +} + +.hamburger span { + display: block; + width: 24px; + height: 2px; + background-color: #1f3a5f; + border-radius: 2px; + transition: all 0.3s ease; +} + +/* Overlay */ +.sidebar-overlay { + display: none; + position: fixed; + inset: 0; + background: rgba(0, 0, 0, 0.4); + z-index: 99; +} + +.sidebar-overlay.active { + display: block; +} + +/* ── MAIN CONTENT ── */ +.main-content { + flex: 1; + background: #ffffff; + margin-left: 200px; +} + +/* ── HEADER ── */ +.header { + display: flex; + justify-content: space-between; + align-items: center; + margin-bottom: 30px; + background-color: #f7f8f9; + color: #1f3a5f; + width: 100%; + padding: 16px 24px; + position: sticky; + top: 0; + z-index: 99; +} + +.header h1 { + font-weight: 600; + margin: 0; +} + +.header h6 { + font-weight: 400; + color: #6b7c93; + margin-top: 2px; +} + +.header-btn { + display: flex; + align-items: center; + gap: 16px; +} + +header button { + display: flex; + justify-content: center; + align-items: center; +} + +header a { + color: #1f3a5f; +} + +.create-btn { + width: 160px; + height: 35px; + border-radius: 10px; + background-color: #1f3a5f; + color: #ffffff; + padding: 10px; + border: none; + cursor: pointer; + white-space: nowrap; +} + +/* ── STAT CARDS ── */ +.first-section { + display: flex; + justify-content: center; + align-items: center; + gap: 70px; + padding: 24px 24px; + flex-wrap: wrap; + margin-bottom: 40px; +} + +.card { + background: rgba(245, 245, 245, 0.20); + border-radius: 12px; + padding: 20px; + width: 200px; + height: 100px; + display: flex; + flex-direction: row; + align-items: center; + justify-content: center; + gap: 20px; + box-shadow: 0 1px 8px rgba(0, 0, 0, 0.08); +} + +.card-image { + border-radius: 10px; + padding: 10px; + display: flex; + align-items: center; + justify-content: center; + background-color: #e8f4ff; +} + +.card-image img { + width: 25px; + height: 25px; +} + +.card-text { + display: flex; + flex-direction: column; + font-size: 11px; + color: #888; + text-transform: uppercase; + letter-spacing: 0.5px; + text-align: center; +} + +.card-text > p { + font-size: 24px; + font-weight: bold; + color: #1f3a5f; + margin: 4px 0; +} + +.first { background-color: rgba(255, 179, 71, 0.29); } +.second { background-color: rgba(46, 139, 87, 0.51); } +.third { background-color: rgba(255, 0, 4, 0.19); } + +/* TABLE */ +.second-section { + background: rgba(228, 228, 228, 0.47); + border: 1px solid rgba(107, 124, 147, 0.5); + border-radius: 10px; + margin: 0 20px 40px; + overflow-x: auto; /* horizontal scroll on small screens */ +} + +table { + width: 100%; + border-collapse: collapse; + min-width: 480px; /* prevents table crushing */ + margin-top: 0px; + text-align: left; +} + +th, td { + padding: 16px 12px; + text-align: center; + vertical-align: middle; + border-bottom: 1px solid rgba(107, 124, 147, 0.5); + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +tbody tr { + border-bottom: 1px solid rgba(107, 124, 147, 0.5); +} + +thead tr { + color: #1f3a5f; + background: rgba(217, 217, 217, 0.65); + border-bottom: 2px solid rgba(107, 124, 147, 1); +} + +tbody tr:last-child { + border-bottom: none; +} + +.table-image { + height: 38px; + width: 40px; + object-fit: cover; + border-radius: 50%; + vertical-align: middle; + min-width: 40px; +} + +thead th:first-child, +tbody td:first-child { + text-align: center; + padding-left: 20px; +} + +thead th:last-child, +tbody td:last-child { + text-align: center; +} + +.name-cell { + display: flex; + justify-content: flex-start; + align-items: center; + gap: 10px; +} + +.status { + padding: 6px 14px; + border-radius: 5px; + color: #f7f8f9; + text-align: center; + display: inline-flex; + justify-content: center; + align-items: center; + font-size: 13px; + font-weight: 400; + margin-top: 10px; + width: 100px; + max-width: 140px; +} + +.Pending { background: #ffb347; } +.Issued, .Confirmed { background: #2e8b57; } +.completed { background: #057df2; } + +/* ── PAGINATION ── */ +.next-prev { + display: flex; + justify-content: space-between; + align-items: center; + padding: 14px 20px; + font-size: 14px; + color: #2a2a2a; + flex-wrap: wrap; + gap: 10px; +} + +.controls { + display: flex; + align-items: center; + gap: 6px; +} + +.page-btn { + padding: 3px 8px; + border: 1px solid #d0d7e2; + border-radius: 4px; + background: #fff; + color: #2a2a2a; + font-size: 13px; + cursor: pointer; + transition: all 0.2s ease; +} + +.page-btn:hover:not(:disabled):not(.active) { + background: #f0f4f8; + border-color: #a0aec0; +} + +.page-btn.active { + background: #057df2; + color: #fff; + border-color: #1f3a5f; + font-weight: 600; +} + +.nav-btn { + display: flex; + align-items: center; + gap: 4px; +} + + +/* + TABLET — max-width: 1024px +*/ +@media (max-width: 1024px) { + .card { + width: 180px; + } + + .first-section { + gap: 24px; + } +} + + +/* + MOBILE — max-width: 768px + */ +@media (max-width: 768px) { + + /* Sidebar slides off-screen */ + .sidebar { + transform: translateX(-100%); + width: 220px; + z-index: 200; + } + + .sidebar.open { + transform: translateX(0); + } + + .main-content { + margin-left: 0; + } + + .hamburger { + display: flex; + } + + .header { + padding: 12px 16px; + margin-bottom: 20px; + } + + .header h1 { + font-size: 16px; + } + + .header h6 { + font-size: 11px; + } + + .create-btn { + width: 140px; + font-size: 12px; + } + + /* Cards wrap to 2 per row */ + .first-section { + gap: 16px; + padding: 16px; + margin-bottom: 24px; + } + + .card { + width: calc(50% - 8px); + min-width: 140px; + height: auto; + padding: 16px; + } + + .second-section { + margin: 0 12px 30px; + } + + th, td { + padding: 12px 8px; + font-size: 12px; + } + + .status { + font-size: 11px; + min-width: 70px; + padding: 5px 10px; + margin-top: 8px; + } + + .next-prev { + padding: 12px 16px; + font-size: 13px; + } +} + + +/* + SMALL MOBILE — max-width: 480px + iPhone SE (375px) +*/ +@media (max-width: 480px) { + + .header h1 { + font-size: 14px; + } + + .header h6 { + display: none; + } + + .create-btn { + width: 120px; + font-size: 11px; + } + + /* All 3 cards in a single row, smaller */ + .first-section { + gap: 8px; + padding: 12px; + } + + .card { + width: calc(33% - 6px); + min-width: 0; + padding: 12px 8px; + gap: 8px; + flex-direction: column; + height: auto; + } + + .card-text { + font-size: 9px; + } + + .card-text > p { + font-size: 18px; + } + + .card-image img { + width: 20px; + height: 20px; + } + + th, td { + padding: 10px 6px; + font-size: 11px; + } + + .table-image { + width: 30px; + height: 30px; + min-width: 30px; + } + + .status { + font-size: 10px; + min-width: 60px; + padding: 4px 6px; + margin-left: 0; + } + + .next-prev { + flex-direction: column; + align-items: flex-start; + gap: 8px; + } +} \ No newline at end of file diff --git a/capstone project/certificates.html b/capstone project/certificates.html new file mode 100644 index 0000000..c53971a --- /dev/null +++ b/capstone project/certificates.html @@ -0,0 +1,244 @@ + + + + + + + Document + + + + + + + + + + + + +
+ + +
+ +
+ + + +
+

Certificates

+
Manage Volunteers Certificates
+
+ +
+ + + +
+
+ + +
+
+
+ +
+
+ TOTAL
CERTIFICATES +

6

+
+
+ +
+
+ +
+
+ ISSUED +

4

+
+
+ +
+
+ +
+
+ PENDING +

4

+
+
+
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameEventDateStatus
+
+ + John Doe +
+
Coastal Clean-upJune 12, 2025Issued +

...

+
+
+ + Mary Musa +
+
Tree Planting DriveJune 15, 2025Issued +

...

+
+
+ + David James +
+
Beach CleanupJune 18, 2025Pending +

...

+
+
+ + Emeka Obi +
+
Coastal CleanupJune 19, 2025Confirmed +

...

+
+
+ + Aisha Bello +
+
Food Distribution DriveJune 20, 2025Pending +

...

+
+
+ + Fatima Ahmed +
+
Community Health OutreachJune 22, 2025Confirmed +

...

+
+
+ + +
+ Showing 6 of 6 certificates +
+ + + + +
+
+ +
+
+ + + + + + \ No newline at end of file diff --git a/capstone project/dashboard3.css b/capstone project/dashboard3.css new file mode 100644 index 0000000..060858a --- /dev/null +++ b/capstone project/dashboard3.css @@ -0,0 +1,377 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +body { + font-family: "Poppins", sans-serif; + font-weight: 400; + font-size: 14px; +} + +.main-container { + display: flex; +} + +/* ── SIDEBAR ── */ +.sidebar { + width: 200px; + min-height: 100vh; + background: #1f3a5f; + color: #ffffff; + padding: 0 20px 20px 20px; + position: fixed; + top: 0; + left: 0; + overflow-y: auto; + z-index: 100; + transition: transform 0.3s ease; +} + +.sidebar a:hover li { + background: rgba(255, 255, 255, 0.15); + border-radius: 8px; + padding-left: 16px; + transition: all 0.2s ease; +} + +.sidebar a.active li { + background: rgba(255, 255, 255, 0.25); + border-radius: 8px; + border-left: 3px solid #ffffff; + padding-left: 13px; +} + +.logo { + margin-top: 0; + margin-bottom: 30px; + padding: 0 0px 24px; + height: 130px; + width: 150px; + object-fit: cover; +} + +.sidebar a { + list-style: none; + text-decoration: none; + color: #ffffff; +} + +.sidebar li { + padding: 12px; + margin-bottom: 5px; + cursor: pointer; +} + +/* ── HAMBURGER ── */ +.hamburger { + display: none; + flex-direction: column; + justify-content: center; + gap: 5px; + cursor: pointer; + background: none; + border: none; + padding: 4px; +} + +.hamburger span { + display: block; + width: 24px; + height: 2px; + background-color: #1f3a5f; + border-radius: 2px; + transition: all 0.3s ease; +} + +/* Overlay */ +.sidebar-overlay { + display: none; + position: fixed; + inset: 0; + background: rgba(0, 0, 0, 0.4); + z-index: 99; +} + +.sidebar-overlay.active { + display: block; +} + +/* ── MAIN CONTENT ── */ +.main-content { + flex: 1; + background: #ffffff; + margin-left: 200px; +} + +/* ── HEADER ── */ +.header { + display: flex; + justify-content: space-between; + align-items: center; + margin-bottom: 30px; + background-color: #f7f8f9; + color: #1f3a5f; + width: 100%; + padding: 16px 24px; + position: sticky; + top: 0; + z-index: 99; +} + +.header h1 { + font-weight: 600; + margin: 0; +} + +.header h6 { + font-weight: 400; + color: #6b7c93; + margin-top: 2px; +} + +.header-btn { + display: flex; + align-items: center; + gap: 16px; +} + +header button { + display: flex; + justify-content: center; + align-items: center; +} + +header a { + color: #1f3a5f; +} + +.create-btn { + width: 120px; + height: 35px; + border-radius: 10px; + background-color: #1f3a5f; + color: #ffffff; + padding: 10px; + border: none; + cursor: pointer; +} + +/* ── FILTER / SEARCH ROW ── */ +.first-section { + display: flex; + align-items: center; + justify-content: space-between; + padding: 5px 16px 50px 16px; + margin-bottom: 50px; + border-bottom: 1px solid rgba(107, 124, 147, 0.3); +} + +.first-part { + display: flex; + align-items: center; + gap: 24px; +} + +.tab { + font-size: 14px; + font-weight: 500; + color: rgba(107, 124, 147, 1); + cursor: pointer; + padding-bottom: 4px; + border-bottom: 2px solid transparent; + margin: 0; +} + +.tab.active-tab { + color: #057df2; + border-bottom: 2px solid #057df2; +} + +.first-part .tab:hover { + color: #057df2; + border-bottom: 2px solid #057df2; +} + +.second-part { + display: flex; + justify-content: center; + align-items: center; + gap: 0; + border: 1px solid rgba(107, 124, 147, 0.4); + border-radius: 6px; + overflow: hidden; + background: white; +} + +input { + border: none; + outline: none; + padding: 12px 18px; + font-size: 13px; + width: 220px; + color: #1e2d4a; +} + +input::placeholder { + color: rgba(107, 124, 147, 0.7); + font-size: 12px; +} + +.search-btn { + background: #f7f8f9; + border: none; + padding: 12px 20px; + cursor: pointer; + color: #057df2; + display: flex; + align-items: center; + justify-content: center; +} + +.search-btn:hover { + background: #0369d1; + color: #ffffff; +} + +/* ── EMPTY STATE ── */ +.second-section { + display: flex; + justify-content: center; + align-items: center; + flex-direction: column; + padding: 40px 16px; +} + +.calendar-image img { + width: 400px; + height: 300px; + max-width: 100%; /* prevents overflow on small screens */ + object-fit: contain; +} + +.text-under-image { + margin-top: 30px; + margin-bottom: 40px; + text-align: center; + color: #1f3a5f; + padding: 0 16px; +} + + +/* ════════════════════════════════════════ + TABLET — max-width: 1024px +════════════════════════════════════════ */ +@media (max-width: 1024px) { + input { + width: 160px; + } +} + + +/* ════════════════════════════════════════ + MOBILE — max-width: 768px +════════════════════════════════════════ */ +@media (max-width: 768px) { + + .sidebar { + transform: translateX(-100%); + width: 220px; + z-index: 200; + } + + .sidebar.open { + transform: translateX(0); + } + + .main-content { + margin-left: 0; + } + + .hamburger { + display: flex; + } + + .header { + padding: 12px 16px; + margin-bottom: 20px; + } + + .header h1 { + font-size: 16px; + } + + .header h6 { + font-size: 11px; + } + + .create-btn { + width: 100px; + font-size: 12px; + } + + /* Stack tabs + search vertically */ + .first-section { + flex-direction: column; + align-items: flex-start; + gap: 16px; + padding: 5px 12px 30px 12px; + margin-bottom: 24px; + } + + .second-part { + width: 100%; + } + + input { + width: 100%; + flex: 1; + } + + .calendar-image img { + width: 280px; + height: auto; + } + + .text-under-image h3 { + font-size: 15px; + } +} + + +/* ════════════════════════════════════════ + SMALL MOBILE — max-width: 480px + iPhone SE (375px) +════════════════════════════════════════ */ +@media (max-width: 480px) { + + .header h1 { + font-size: 14px; + } + + .header h6 { + display: none; + } + + .create-btn { + display: none; + } + + .tab { + font-size: 12px; + } + + .first-part { + gap: 16px; + } + + .calendar-image img { + width: 220px; + height: auto; + } + + .text-under-image h3 { + font-size: 13px; + } +} \ No newline at end of file diff --git a/capstone project/dashboard3.html b/capstone project/dashboard3.html new file mode 100644 index 0000000..26dceb7 --- /dev/null +++ b/capstone project/dashboard3.html @@ -0,0 +1,119 @@ + + + + + + + Document + + + + + + + + + + + + +
+ + +
+ +
+ + + +
+

Events

+
Browse and manage all your events
+
+ +
+ + + +
+
+ +
+
+

All

+

Upcoming

+

Completed

+
+
+ + +
+
+ +
+
+ image +
+
+

No Events created yet.
+ Create your first volunteer event to start recruiting.

+
+
+ +
+
+ + + + + + \ No newline at end of file diff --git a/capstone project/dashboard4.css b/capstone project/dashboard4.css new file mode 100644 index 0000000..5acd266 --- /dev/null +++ b/capstone project/dashboard4.css @@ -0,0 +1,551 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +body { + font-family: "Poppins", sans-serif; + font-weight: 400; + font-size: 14px; +} + +.main-container { + display: flex; +} + +/* ── SIDEBAR ── */ +.sidebar { + width: 200px; + min-height: 100vh; + background: #1f3a5f; + color: #ffffff; + padding: 0 20px 20px 20px; + position: fixed; + top: 0; + left: 0; + overflow-y: auto; + z-index: 100; + transition: transform 0.3s ease; +} + +.sidebar a:hover li { + background: rgba(255, 255, 255, 0.15); + border-radius: 8px; + padding-left: 16px; + transition: all 0.2s ease; +} + +.sidebar a.active li { + background: rgba(255, 255, 255, 0.25); + border-radius: 8px; + border-left: 3px solid #ffffff; + padding-left: 13px; +} + +.logo { + margin-top: 0; + margin-bottom: 30px; + padding: 0 0px 24px; + height: 130px; + width: 150px; + object-fit: cover; +} + +.sidebar a { + list-style: none; + text-decoration: none; + color: #ffffff; +} + +.sidebar li { + padding: 12px; + margin-bottom: 5px; + cursor: pointer; +} + +/* ── HAMBURGER ── */ +.hamburger { + display: none; + flex-direction: column; + justify-content: center; + gap: 5px; + cursor: pointer; + background: none; + border: none; + padding: 4px; +} + +.hamburger span { + display: block; + width: 24px; + height: 2px; + background-color: #1f3a5f; + border-radius: 2px; + transition: all 0.3s ease; +} + +/* Overlay */ +.sidebar-overlay { + display: none; + position: fixed; + inset: 0; + background: rgba(0, 0, 0, 0.4); + z-index: 99; +} + +.sidebar-overlay.active { + display: block; +} + +/* ── MAIN CONTENT ── */ +.main-content { + flex: 1; + background: #ffffff; + margin-left: 200px; +} + +/* ── HEADER ── */ +.header { + display: flex; + justify-content: space-between; + align-items: center; + margin-bottom: 30px; + background-color: #f7f8f9; + color: #1f3a5f; + width: 100%; + padding: 16px 24px; + position: sticky; + top: 0; + z-index: 99; +} + +.header h1 { + font-weight: 600; + margin: 0; +} + +.header h6 { + font-weight: 400; + color: #6b7c93; + margin-top: 2px; +} + +.header-btn { + display: flex; + align-items: center; + gap: 16px; +} + +header button { + display: flex; + justify-content: center; + align-items: center; +} + +header a { + color: #1f3a5f; +} + +.create-btn { + width: 120px; + height: 35px; + border-radius: 10px; + background-color: #1f3a5f; + color: #ffffff; + padding: 10px; + border: none; + cursor: pointer; +} + +.cancel-btn { + background-color: red; +} + +/* ── FIRST SECTION: image + text card ── */ +.first-section { + display: flex; + align-items: stretch; + justify-content: space-between; + gap: 20px; + padding: 12px 16px; + margin-bottom: 50px; +} + +.first-section img { + height: 430px; + width: 700px; + max-width: 100%; + object-fit: cover; + border-radius: 10px; +} + +.first-section .text-beside-image { + display: flex; + justify-content: flex-start; + background-color: #f7f8f9; + color: #2a2a2a; + flex-direction: column; + gap: 25px; + text-align: left; + padding: 30px 35px; + height: 430px; + width: 400px; + border: 1px solid rgba(107, 124, 147, 0.3); + border-radius: 10px; +} + +.text-beside-image h2 { + color: #000000; +} + +.upcoming { + margin-bottom: 20px; + padding: 10px 50px; + border: 1px solid rgba(107, 124, 147, 0.3); + border-radius: 8px; + width: fit-content; + color: #ffffff; + background-color: #ffb347; +} + +.list-under-upcoming { + display: flex; + flex-direction: column; + gap: 28px; +} + +.list-under-upcoming p { + display: flex; + align-items: center; + gap: 10px; + margin: 0; +} + +.list-under-upcoming i { + color: #057df2; + background-color: #ffffff; + width: 30px; + height: 30px; + display: inline-flex; + align-items: center; + justify-content: center; + border-radius: 4px; + flex-shrink: 0; + font-size: 14px; +} + +/* ── EVENT DESCRIPTION ── */ +.event-description { + padding-left: 16px; + margin-bottom: 20px; + color: #1f3a5f; +} + +/* ── SECOND SECTION ── */ +.second-section div { + padding: 20px; + border: 1px solid rgba(107, 124, 147, 0.3); + border-radius: 10px; + margin: 0 13px; + display: flex; + flex-direction: column; + gap: 20px; + background-color: #f7f8f9; + color: #2a2a2a; + line-height: 1.7; +} + +/* ── THIRD SECTION: stat cards ── */ +.third-section { + display: grid; + grid-template-columns: repeat(3, 1fr); + gap: 20px; + margin: 30px 13px 25px; +} + +.card { + background-color: #f7f8f9; + padding: 20px; + border-radius: 8px; + box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1); + border: 1px solid #6b7c93; + display: flex; + justify-content: center; + align-items: center; + flex-direction: column; +} + +.card h3 { + width: 100%; + border-bottom: 1px solid #6b7c93; + padding-bottom: 10px; + margin-bottom: 10px; + display: flex; + justify-content: center; + align-items: center; +} + +.under-card { + color: #2a2a2a; + text-align: center; + font-size: 13px; +} + +#fontawesome { + color: #057df2; +} + +/* ── FOURTH SECTION: volunteer search ── */ +.fourth-section { + display: flex; + align-items: center; + justify-content: space-between; + padding: 5px 16px 50px; + margin: 0 13px; + margin-bottom: 20px; +} + +.first-part { + display: flex; + align-items: center; + gap: 24px; +} + +.second-part { + display: flex; + justify-content: center; + align-items: center; + border: 1px solid rgba(107, 124, 147, 0.4); + border-radius: 6px; + overflow: hidden; + background: white; +} + +input { + border: none; + outline: none; + padding: 12px 18px; + font-size: 13px; + width: 220px; + color: #1e2d4a; +} + +input::placeholder { + color: rgba(107, 124, 147, 0.7); + font-size: 12px; +} + +.search-btn { + background: #f7f8f9; + border: none; + padding: 12px 20px; + cursor: pointer; + color: #057df2; + display: flex; + align-items: center; + justify-content: center; +} + +.search-btn:hover { + background: #0369d1; + color: #ffffff; +} + +/* ── FIFTH SECTION: empty state ── */ +.fifth-section img { + height: 320px; + width: 500px; + max-width: 100%; + object-fit: cover; + border-radius: 10px; + margin-bottom: 30px; +} + +.final-image { + display: flex; + justify-content: center; + align-items: center; +} + +.fifth-section h3 { + display: flex; + justify-content: center; + align-items: center; + text-align: center; + margin-bottom: 60px; + padding: 0 16px; + color: #1f3a5f; +} + + +/* ════════════════════════════════════════ + TABLET — max-width: 1024px +════════════════════════════════════════ */ +@media (max-width: 1024px) { + + .first-section img { + width: 90%; + height: 450px; + } + + .first-section .text-beside-image { + width: 50%; + height: auto; + min-height: 350px; + padding: 24px 20px; + } + + input { + width: 160px; + } +} + + +/* ════════════════════════════════════════ + MOBILE — max-width: 768px +════════════════════════════════════════ */ +@media (max-width: 768px) { + + /* Sidebar slides off-screen */ + .sidebar { + transform: translateX(-100%); + width: 220px; + z-index: 200; + } + + .sidebar.open { + transform: translateX(0); + } + + .main-content { + margin-left: 0; + } + + .hamburger { + display: flex; + } + + .header { + padding: 12px 16px; + margin-bottom: 20px; + } + + .header h1 { + font-size: 16px; + } + + .header h6 { + font-size: 11px; + } + + .create-btn { + width: 100px; + font-size: 12px; + } + + /* Stack image + text card vertically */ + .first-section { + flex-direction: column; + padding: 12px; + margin-bottom: 30px; + gap: 16px; + } + + .first-section img { + width: 100%; + height: 260px; + } + + .first-section .text-beside-image { + width: 100%; + height: auto; + padding: 20px; + } + + /* Stat cards: 3 → 1 row on mobile */ + .third-section { + grid-template-columns: repeat(3, 1fr); + gap: 12px; + margin: 20px 12px; + } + + /* Stack fourth section */ + .fourth-section { + flex-direction: column; + align-items: flex-start; + gap: 16px; + padding: 5px 12px 30px; + margin: 0 0 20px; + } + + .second-part { + width: 100%; + } + + input { + width: 100%; + flex: 1; + } + + .second-section div { + margin: 0 12px; + } + + .fifth-section img { + width: 80%; + height: auto; + } +} + + +/* ════════════════════════════════════════ + SMALL MOBILE — max-width: 480px + iPhone SE (375px) +════════════════════════════════════════ */ +@media (max-width: 480px) { + + .header h1 { + font-size: 14px; + } + + .header h6 { + display: none; + } + + .create-btn { + width: 90px; + font-size: 11px; + } + + .first-section img { + height: 200px; + } + + /* Stat cards: 1 column on SE */ + .third-section { + grid-template-columns: 1fr; + gap: 10px; + } + + .card { + padding: 14px 10px; + } + + .under-card { + font-size: 11px; + } + + .upcoming { + padding: 8px 24px; + } + + .fifth-section img { + width: 90%; + height: auto; + } + + .fifth-section h3 { + font-size: 13px; + } +} \ No newline at end of file diff --git a/capstone project/dashboard4.html b/capstone project/dashboard4.html new file mode 100644 index 0000000..89d1281 --- /dev/null +++ b/capstone project/dashboard4.html @@ -0,0 +1,186 @@ + + + + + + + Document + + + + + + + + + + + + +
+ + +
+ +
+ + + +
+

Events details

+
View and manage all your events
+
+ +
+ + + +
+
+ + +
+
+ +
+ +
+

Coastal clean-up Exercise

+ +
+

Upcoming

+
+ +
+

Lekki waterfront, Lagos

+

June 12, 2026

+

8:00am - 12:00pm

+

18/40 volunteers

+
+
+
+ + +
+

Events Description

+
+ + +
+
+

+ Join us for a community coastal clean-up exercise aimed at reducing plastic waste and protecting + marine life along the Lekki Waterfront. This initiative brings together passionate volunteers + who are committed to keeping our beaches and waterways clean. +

+

+ During this event, volunteers will work in small groups to collect plastic waste, sort + recyclable materials, and safely dispose of debris found along the shoreline. All necessary + clean-up materials such as gloves, waste bags, and safety gear will be provided by the + organizers. +

+

+ Beyond the clean-up activity, the event will also include a short environmental awareness + session where participants will learn about the impact of plastic pollution on marine ecosystems + and how small everyday actions can contribute to a healthier environment. +

+

+ Whether you are passionate about environmental sustainability, looking to give back to the + community, or simply want to spend a meaningful morning outdoors, this event is a great + opportunity to make a positive impact while connecting with like-minded individuals. +

+
+
+ + +
+
+

40

+

total events

+
+
+

59

+

upcoming events

+
+
+

324

+

total volunteers

+
+
+ + +
+
+

Volunteer Registered

+
+
+ + +
+
+ + +
+
+ +
+

No Volunteers registered yet.
Volunteers will appear once they join

+
+ +
+
+ + + + + + \ No newline at end of file diff --git a/capstone project/dashboard5.css b/capstone project/dashboard5.css new file mode 100644 index 0000000..6ccd268 --- /dev/null +++ b/capstone project/dashboard5.css @@ -0,0 +1,530 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +body { + font-family: "Poppins", sans-serif; + font-weight: 400; + font-size: 14px; +} + +.main-container { + display: flex; +} + +/* ── SIDEBAR ── */ +.sidebar { + width: 200px; + min-height: 100vh; + background: #1f3a5f; + color: #ffffff; + padding: 0 20px 20px 20px; + position: fixed; + top: 0; + left: 0; + overflow-y: auto; + z-index: 100; + transition: transform 0.3s ease; +} + +.sidebar a:hover li { + background: rgba(255, 255, 255, 0.15); + border-radius: 8px; + padding-left: 16px; + transition: all 0.2s ease; +} + +.sidebar a.active li { + background: rgba(255, 255, 255, 0.25); + border-radius: 8px; + border-left: 3px solid #ffffff; + padding-left: 13px; +} + +.logo { + margin-top: 0; + margin-bottom: 30px; + padding: 0 0px 24px; + height: 130px; + width: 150px; + object-fit: cover; +} + +.sidebar a { + list-style: none; + text-decoration: none; + color: #ffffff; +} + +.sidebar li { + padding: 12px; + margin-bottom: 5px; + cursor: pointer; +} + +/* ── HAMBURGER ── */ +.hamburger { + display: none; + flex-direction: column; + justify-content: center; + gap: 5px; + cursor: pointer; + background: none; + border: none; + padding: 4px; +} + +.hamburger span { + display: block; + width: 24px; + height: 2px; + background-color: #1f3a5f; + border-radius: 2px; + transition: all 0.3s ease; +} + +/* Overlay */ +.sidebar-overlay { + display: none; + position: fixed; + inset: 0; + background: rgba(0, 0, 0, 0.4); + z-index: 99; +} + +.sidebar-overlay.active { + display: block; +} + +/* ── MAIN CONTENT ── */ +.main-content { + flex: 1; + background: #ffffff; + margin-left: 200px; +} + +/* ── HEADER ── */ +.header { + display: flex; + justify-content: space-between; + align-items: center; + margin-bottom: 30px; + background-color: #f7f8f9; + color: #1f3a5f; + width: 100%; + padding: 16px 24px; + position: sticky; + top: 0; + z-index: 99; +} + +.header h1 { + font-weight: 600; + margin: 0; +} + +.header h6 { + font-weight: 400; + color: #6b7c93; + margin-top: 2px; +} + +.header-btn { + display: flex; + align-items: center; + gap: 16px; +} + +header a { + color: #1f3a5f; +} + +.create-btn { + width: 120px; + height: 35px; + border-radius: 10px; + background-color: #1f3a5f; + color: #ffffff; + padding: 10px; + border: none; + cursor: pointer; +} + +.cancel-btn { + background-color: red; +} + +/* ── FIRST SECTION ── */ +.first-section { + display: flex; + align-items: stretch; + justify-content: space-between; + gap: 20px; + padding: 12px 16px; + margin-bottom: 50px; +} + +.first-section img { + height: 430px; + width: 700px; + max-width: 100%; + object-fit: cover; + border-radius: 10px; +} + +.first-section .text-beside-image { + display: flex; + justify-content: flex-start; + background-color: #f7f8f9; + color: #2a2a2a; + flex-direction: column; + gap: 25px; + text-align: left; + padding: 30px 35px; + height: 430px; + width: 400px; + border: 1px solid rgba(107, 124, 147, 0.3); + border-radius: 10px; +} + +.text-beside-image h2 { + color: #000000; +} + +.upcoming { + margin-bottom: 20px; + padding: 10px 50px; + border: 1px solid rgba(107, 124, 147, 0.3); + border-radius: 8px; + width: fit-content; + color: #ffffff; + background-color: #ffb347; +} + +.list-under-upcoming { + display: flex; + flex-direction: column; + gap: 28px; +} + +.list-under-upcoming p { + display: flex; + align-items: center; + gap: 10px; + margin: 0; +} + +.list-under-upcoming i { + color: #057df2; + background-color: #ffffff; + width: 30px; + height: 30px; + display: inline-flex; + align-items: center; + justify-content: center; + border-radius: 4px; + flex-shrink: 0; + font-size: 14px; +} + +/* ── EVENT DESCRIPTION ── */ +.event-description { + padding-left: 16px; + margin-bottom: 40px; + color: #1f3a5f; +} + +/* ── SECOND SECTION ── */ +.second-section div { + padding: 20px; + border: 1px solid rgba(107, 124, 147, 0.3); + border-radius: 10px; + margin: 0 13px; + display: flex; + flex-direction: column; + gap: 20px; + background-color: #f7f8f9; + color: #2a2a2a; + line-height: 1.7; +} + +/* ── THIRD SECTION ── */ +.third-section { + display: grid; + grid-template-columns: repeat(3, 1fr); + gap: 20px; + margin: 30px 13px 25px; +} + +.card { + background-color: #f7f8f9; + padding: 20px; + border-radius: 8px; + box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1); + border: 1px solid #6b7c93; + display: flex; + justify-content: center; + align-items: center; + flex-direction: column; +} + +.card h3 { + width: 100%; + border-bottom: 1px solid #6b7c93; + padding-bottom: 10px; + margin-bottom: 10px; + display: flex; + justify-content: center; + align-items: center; +} + +.under-card { + color: #2a2a2a; + text-align: center; + font-size: 13px; +} + +#fontawesome { + color: #057df2; +} + +/* ── FOURTH SECTION ── */ +.fourth-section { + display: flex; + align-items: center; + justify-content: space-between; + padding: 5px 16px 50px; + margin: 0 13px 20px; +} + +.first-part { + display: flex; + align-items: center; + gap: 24px; +} + +.second-part { + display: flex; + justify-content: center; + align-items: center; + border: 1px solid rgba(107, 124, 147, 0.4); + border-radius: 6px; + overflow: hidden; + background: white; +} + +input { + border: none; + outline: none; + padding: 12px 18px; + font-size: 13px; + width: 220px; + color: #1e2d4a; +} + +input::placeholder { + color: rgba(107, 124, 147, 0.7); + font-size: 12px; +} + +.search-btn { + background: #f7f8f9; + border: none; + padding: 12px 20px; + cursor: pointer; + color: #057df2; + display: flex; + align-items: center; + justify-content: center; +} + +.search-btn:hover { + background: #0369d1; + color: #ffffff; +} + +/* ── FIFTH SECTION ── */ +.fifth-section img { + height: 300px; + width: 450px; + max-width: 100%; + object-fit: cover; + border-radius: 10px; + margin-bottom: 40px; +} + +.final-image { + display: flex; + justify-content: center; + align-items: center; +} + +.fifth-section h3 { + display: flex; + justify-content: center; + align-items: center; + text-align: center; + margin-bottom: 60px; + padding: 0 16px; + color: #1f3a5f; +} + + +/* ════════════════════════════════════════ + TABLET — max-width: 1024px +════════════════════════════════════════ */ +@media (max-width: 1024px) { + + .first-section img { + width: 90%; + height: 450px; + } + + .first-section .text-beside-image { + width: 50%; + height: auto; + min-height: 350px; + padding: 24px 20px; + } + + input { + width: 160px; + } +} + + +/* ════════════════════════════════════════ + MOBILE — max-width: 768px +════════════════════════════════════════ */ +@media (max-width: 768px) { + + .sidebar { + transform: translateX(-100%); + width: 220px; + z-index: 200; + } + + .sidebar.open { + transform: translateX(0); + } + + .main-content { + margin-left: 0; + } + + .hamburger { + display: flex; + } + + .header { + padding: 12px 16px; + margin-bottom: 20px; + } + + .header h1 { + font-size: 16px; + } + + .header h6 { + font-size: 11px; + } + + /* Stack image + card vertically */ + .first-section { + flex-direction: column; + padding: 12px; + margin-bottom: 30px; + gap: 16px; + } + + .first-section img { + width: 100%; + height: 260px; + } + + .first-section .text-beside-image { + width: 100%; + height: auto; + padding: 20px; + } + + .third-section { + grid-template-columns: repeat(3, 1fr); + gap: 12px; + margin: 20px 12px; + } + + .fourth-section { + flex-direction: column; + align-items: flex-start; + gap: 16px; + padding: 5px 12px 30px; + margin: 0 0 20px; + } + + .second-part { + width: 100%; + } + + input { + width: 100%; + flex: 1; + } + + .second-section div { + margin: 0 12px; + } + + .fifth-section img { + width: 80%; + height: auto; + } +} + + +/* ════════════════════════════════════════ + SMALL MOBILE — max-width: 480px + iPhone SE (375px) +════════════════════════════════════════ */ +@media (max-width: 480px) { + + .header h1 { + font-size: 14px; + } + + .header h6 { + display: none; + } + + .first-section img { + height: 200px; + } + + .third-section { + grid-template-columns: 1fr; + gap: 10px; + } + + .card { + padding: 14px 10px; + } + + .under-card { + font-size: 11px; + } + + .upcoming { + padding: 8px 24px; + } + + .fifth-section img { + width: 90%; + height: auto; + } + + .fifth-section h3 { + font-size: 13px; + } +} \ No newline at end of file diff --git a/capstone project/dashboard5.html b/capstone project/dashboard5.html new file mode 100644 index 0000000..27ab055 --- /dev/null +++ b/capstone project/dashboard5.html @@ -0,0 +1,185 @@ + + + + + + + Document + + + + + + + + + + + + +
+ + +
+ +
+ + + +
+

Certificates

+
Manage all Volunteers Activities
+
+ +
+ + +
+
+ + +
+
+ +
+ +
+

Coastal clean-up Exercise

+ +
+

Upcoming

+
+ +
+

Lekki waterfront, Lagos

+

June 12, 2026

+

8:00am - 12:00pm

+

18/40 volunteers

+
+
+
+ + +
+

Events Description

+
+ + +
+
+

+ Join us for a community coastal clean-up exercise aimed at reducing plastic waste and protecting + marine life along the Lekki Waterfront. This initiative brings together passionate volunteers + who are committed to keeping our beaches and waterways clean. +

+

+ During this event, volunteers will work in small groups to collect plastic waste, sort + recyclable materials, and safely dispose of debris found along the shoreline. All necessary + clean-up materials such as gloves, waste bags, and safety gear will be provided by the + organizers. +

+

+ Beyond the clean-up activity, the event will also include a short environmental awareness + session where participants will learn about the impact of plastic pollution on marine ecosystems + and how small everyday actions can contribute to a healthier environment. +

+

+ Whether you are passionate about environmental sustainability, looking to give back to the + community, or simply want to spend a meaningful morning outdoors, this event is a great + opportunity to make a positive impact while connecting with like-minded individuals. +

+
+
+ + +
+
+

40

+

total events

+
+
+

59

+

upcoming events

+
+
+

324

+

total volunteers

+
+
+ + +
+
+

Volunteer Registered

+
+
+ + +
+
+ + +
+
+ +
+

No Volunteers registered yet.
Volunteers will appear once they join

+
+ +
+
+ + + + + + \ No newline at end of file diff --git a/capstone project/email-verification.css b/capstone project/email-verification.css new file mode 100644 index 0000000..df74266 --- /dev/null +++ b/capstone project/email-verification.css @@ -0,0 +1,73 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + + +body { + background-color: #ffffff; + display: flex; + justify-content: center; + align-items: center; + min-height: 100vh; + font-family: "Poppins", sans-serif; + font-weight: 300px; + font-size: 14px; +} + + +main { + width: 100%; + max-width: 800px; + padding: 40px 24px; + text-align: center; +} + + +.image img { + width: 180px; + height: 180px; + border-radius: 18px; + +} + +h1 { + font-size: 22px; + font-weight: 700; + color: #1f3a5f; + margin-bottom: 70px; +} + +/* Full-width grey divider line */ +.divider { + border: none; + border-top: 1px solid #e0e0e0; + margin-bottom: 24px; + width: 100%; +} + +.main-text { + font-size: 14px; + color: rgba(0, 0, 0, 0.80); + line-height: 1.7; + margin-bottom: 80px; +} + + +button { + width: 80%; + padding: 16px; + background-color: #1f3a5f; + color: #ffffff; + border: none; + border-radius: 8px; + font-size: 15px; + font-weight: 500; + cursor: pointer; + margin-bottom: 20px; +} + +button:hover { + background-color: #2a4f82; +} \ No newline at end of file diff --git a/capstone project/email-verification.html b/capstone project/email-verification.html new file mode 100644 index 0000000..5248a78 --- /dev/null +++ b/capstone project/email-verification.html @@ -0,0 +1,36 @@ + + + + + + + Document + + + + + + + +
+
+ mail icon +
+ +

Verify Your Email

+ +
+ +

+ We've sent a verification link to your email address.
+ Please check your inbox and click the link to continue. +

+ + +
+ + + + \ No newline at end of file diff --git a/capstone project/email-verification2.css b/capstone project/email-verification2.css new file mode 100644 index 0000000..e891d1b --- /dev/null +++ b/capstone project/email-verification2.css @@ -0,0 +1,144 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + + +body { + background-color: #ffffff; + display: flex; + justify-content: center; + align-items: center; + min-height: 100vh; + font-family: "Poppins", sans-serif; + font-weight: 300px; + font-size: 14px; +} + + +main { + width: 100%; + max-width: 800px; /* controls how wide the content stretches */ + padding: 40px 24px; + text-align: center; +} + + +.image img { + width: 180px; + height: 180px; + border-radius: 18px; + margin-bottom: 50px; +} + +h1 { + font-size: 22px; + font-weight: 700; + color: #1f3a5f; + margin-bottom: 15px; +} +.first-p{ + margin-bottom: 50px; +} + +/* Full-width grey divider line */ +.divider { + border: none; + border-top: 1px solid #e0e0e0; + margin-bottom: 24px; + width: 100%; +} + +.main-text { + font-size: 14px; + color: rgba(0, 0, 0, 0.80); + line-height: 1.7; + margin-bottom: 20px; +} +.hour-glass-section{ + display: flex; + justify-content: center; + align-items: center; + gap: 5px; + margin-bottom: 20px; +} +.hour-glass{ + height:24px ; + width:24px ; +} +span{ + color:#057df2; + font-size: 11px; + margin-left: 5px; + +} +.question { + margin-bottom: 20px; + color: #1f3a5f; +} +.points{ + margin-bottom: 60px; +} + +.points p { + display: flex; + + align-items: center; /* vertically centers the icon with the text */ + gap: 10px; + margin-left: 210px; /* space between icon and text */ + margin-bottom: 15px; /* space between each line */ +} +@media(max-width:600px) + +{ + .points p{ + margin-left: 100px; + font-size: 12px; + gap: 5px; + text-align: center; + } +} + +.points img { + width: 10px; + height: 10px; + flex-shrink: 0; /* prevents the icon from shrinking */ +} +.final-div{ + display: flex; + justify-content: center; + align-items: center; + gap: 50px; +} +@media (max-width:780px) { + .final-div{ + flex-direction: column; + gap: 5px; + } + +} + + +button { + width: 30%; + padding: 16px; + background-color: #1f3a5f; + color: #ffffff; + border: none; + border-radius: 8px; + font-size: 15px; + font-weight: 500; + cursor: pointer; + margin-bottom: 20px; +} +@media(max-width:800px) { + button{ + width: 70%; + } + +} + +button:hover { + background-color: #2a4f82; +} \ No newline at end of file diff --git a/capstone project/email-verification2.html b/capstone project/email-verification2.html new file mode 100644 index 0000000..5ffdf51 --- /dev/null +++ b/capstone project/email-verification2.html @@ -0,0 +1,60 @@ + + + + + + + Document + + + + + + + +
+
+ mail icon +
+ +

Your Account is Under Review

+

Thank you for signing up as an Event Organizer.

+ +
+ +

+ Our team is currently reviewing your details. +
This usually takes 24 – 48 hours. +

+
+ +

Approval Status: pending review

+
+

What happens next?

+ +
+

Our admin team reviews your information

+

You will receive an email once approved

+

+

Then you can start creating events

+ +
+ +
+ + + + +
+ +
+ + + + \ No newline at end of file diff --git a/capstone project/event-details.css b/capstone project/event-details.css new file mode 100644 index 0000000..e4e07e4 --- /dev/null +++ b/capstone project/event-details.css @@ -0,0 +1,581 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +body { + font-family: "Poppins", sans-serif; + font-weight: 400; + font-size: 14px; +} + +.main-container { + display: flex; +} + +/* ── SIDEBAR ── */ +.sidebar { + width: 200px; + min-height: 100vh; + background: #1f3a5f; + color: #ffffff; + padding: 0 20px 20px 20px; + position: fixed; + top: 0; + left: 0; + overflow-y: auto; + z-index: 100; + transition: transform 0.3s ease; +} + +.sidebar a:hover li { + background: rgba(255, 255, 255, 0.15); + border-radius: 8px; + padding-left: 16px; + transition: all 0.2s ease; +} + +.sidebar a.active li { + background: #057df2; + border-radius: 3px; + padding-left: 13px; +} + +.logo { + margin-top: 0; + margin-bottom: 30px; + padding: 0 0px 24px; + height: 130px; + width: 150px; + object-fit: cover; +} + +.sidebar a { + list-style: none; + text-decoration: none; + color: #ffffff; +} + +.sidebar li { + padding: 12px; + margin-bottom: 5px; + cursor: pointer; +} + +/* ── HAMBURGER ── */ +.hamburger { + display: none; + flex-direction: column; + justify-content: center; + gap: 5px; + cursor: pointer; + background: none; + border: none; + padding: 4px; +} + +.hamburger span { + display: block; + width: 24px; + height: 2px; + background-color: #1f3a5f; + border-radius: 2px; + transition: all 0.3s ease; +} + +/* Overlay */ +.sidebar-overlay { + display: none; + position: fixed; + inset: 0; + background: rgba(0, 0, 0, 0.4); + z-index: 99; +} + +.sidebar-overlay.active { + display: block; +} + +/* ── MAIN CONTENT ── */ +.main-content { + flex: 1; + background: #ffffff; + margin-left: 200px; +} + +/* ── HEADER ── */ +.header { + display: flex; + justify-content: space-between; + align-items: center; + margin-bottom: 30px; + background-color: #f7f8f9; + color: #1f3a5f; + width: 100%; + padding: 16px 24px; + position: sticky; + top: 0; + z-index: 99; +} + +.header h1 { + font-weight: 600; + margin: 0; +} + +.header h6 { + font-weight: 400; + color: #6b7c93; + margin-top: 2px; +} + +.header-btn { + display: flex; + align-items: center; + gap: 16px; + flex-wrap: wrap; +} + +header button { + display: flex; + justify-content: center; + align-items: center; +} + +header a { + color: #1f3a5f; +} + +.create-btn { + width: 120px; + height: 35px; + border-radius: 10px; + background-color: #1f3a5f; + color: #ffffff; + padding: 10px; + border: none; + cursor: pointer; + white-space: nowrap; +} + +.cancel-btn { + background-color: red; + width: 130px; +} + +/* ── PAGE BODY ── */ +.page-body { + padding: 25px; + display: flex; + flex-direction: column; + gap: 24px; +} + +/* ── EVENT TITLE ROW ── */ +.event-title-row { + display: flex; + justify-content: space-between; + align-items: center; + margin-bottom: 25px; + gap: 16px; + flex-wrap: wrap; +} + +.event-title-row h1 { + font-size: 28px; + font-weight: 600; + color: #2a2a2a; +} + +.status-badge { + padding: 10px 30px; + border-radius: 3px; + font-size: 13px; + font-weight: 600; + background-color: #edf0ee; + color: #2a2a2a; + white-space: nowrap; +} + +/* ── EVENT IMAGE ── */ +.event-image-wrapper { + position: relative; +} + +.event-image-wrapper img { + width: 100%; + + min-height: 800px; + object-fit: contain; + display: block; + border-radius: 8px; +} + +.image-status-badge { + position: absolute; + top: 16px; + right: 16px; + background-color: #2e8b57; + color: #ffffff; + font-size: 13px; + font-weight: 600; + padding: 7px 22px; + border-radius: 3px; +} + +/* ── EVENT DESCRIPTION ── */ +.event-description { + margin: 0 25px 20px; + color: #000000; + font-weight: 400; +} + +/* ── SECOND SECTION ── */ +.second-section div { + padding: 30px 20px; + border: 1px solid rgba(107, 124, 147, 0.3); + border-radius: 10px; + margin: 0 25px 30px; + display: flex; + flex-direction: column; + gap: 20px; + background-color: #f7f8f9; + color: #2a2a2a; + line-height: 1.7; +} + +/* (time, date, location) ── */ +.list-under-upcoming { + display: flex; + gap: 40px; + margin: 0 27px 50px; + font-size: 16px; + flex-wrap: wrap; +} + +.list-under-upcoming p { + display: flex; + align-items: center; + gap: 10px; + margin: 0; +} + +.list-under-upcoming i { + color: #057df2; + background-color: #ffffff; + display: inline-flex; + align-items: center; + justify-content: center; + border-radius: 4px; + flex-shrink: 0; + font-size: 18px; +} + + +.Requirements-container { + display: flex; + flex-direction: column; + align-items: flex-start; + justify-content: center; + gap: 20px; + margin: 0 27px 30px; +} + +.Requirements-list ul { + display: flex; + flex-direction: column; + justify-content: center; + gap: 5px; + margin-left: 20px; +} + +/* THIRD SECTION: stat cards */ +.third-section { + display: grid; + grid-template-columns: repeat(3, 1fr); + gap: 24px; + margin: 0 27px 30px; +} + +.card { + background-color: #f7f8f9; + padding: 16px; + border-radius: 8px; + box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1); + border: 1px solid #6b7c93; + display: flex; + justify-content: center; + align-items: center; + flex-direction: column; + min-height: 120px; +} + +.card h3 { + width: 100%; + border-bottom: 1px solid #6b7c93; + padding-bottom: 10px; + margin-bottom: 10px; + display: flex; + justify-content: center; + align-items: center; + font-size: 28px; + font-weight: 500; +} + +.under-card { + color: #2a2a2a; + text-align: center; + font-size: 13px; +} + +#fontawesome { + color: #057df2; +} + +/* TABLE SECTION */ +.final-section { + background: rgba(228, 228, 228, 0.47); + border: 1px solid rgba(107, 124, 147, 0.5); + border-radius: 10px; + margin: 0 16px 40px; + overflow-x: auto; +} + +table { + width: 100%; + border-collapse: collapse; + min-width: 500px; +} + +th, td { + padding: 16px 12px; + text-align: center; + border-bottom: 1px solid rgba(107, 124, 147, 0.5); +} + +tbody tr { + border-bottom: 1px solid rgba(107, 124, 147, 0.5); +} + +thead tr { + background: rgba(217, 217, 217, 0.65); + border-bottom: 2px solid rgba(107, 124, 147, 1); +} + +tbody tr:last-child { + border-bottom: none; +} + +.status { + padding: 6px 14px; + border-radius: 5px; + color: #f7f8f9; + text-align: center; + display: inline-flex; + justify-content: center; + align-items: center; + font-size: 13px; + font-weight: 400; + margin-top: 10px; + width: 100px; + max-width: 140px; +} + +.upcoming, .completed, .published, .draft { background: #2e8b57; } + + +/* + TABLET — max-width: 1024px + */ +@media (max-width: 1024px) { + + .event-title-row { + margin-right: 0; + } + + .event-title-row h1 { + font-size: 22px; + } + + .third-section { + gap: 16px; + } + + .list-under-upcoming { + gap: 24px; + font-size: 15px; + } +} + + +/* + MOBILE — max-width: 768px + */ +@media (max-width: 768px) { + + /* Sidebar slides off-screen */ + .sidebar { + transform: translateX(-100%); + width: 220px; + z-index: 200; + } + + .sidebar.open { + transform: translateX(0); + } + + .main-content { + margin-left: 0; + } + + .hamburger { + display: flex; + } + + .header { + padding: 12px 16px; + margin-bottom: 20px; + } + + .header h1 { + font-size: 16px; + } + + .header h6 { + font-size: 11px; + } + + /* Stack Edit + Cancel buttons */ + .header-btn { + gap: 8px; + } + + .create-btn { + width: 90px; + font-size: 12px; + padding: 8px; + } + + .cancel-btn { + width: 110px; + } + + .page-body { + padding: 16px; + gap: 16px; + } + + .event-title-row h1 { + font-size: 18px; + } + + .status-badge { + padding: 8px 18px; + font-size: 12px; + } + + .event-image-wrapper img { + max-height: 400px; + margin-bottom: -100px; + margin-top: -100px; + } + + .event-description { + margin: 0 16px 16px; + } + + .second-section div { + margin: 0 16px 20px; + padding: 20px 16px; + } + + /* Stack time/date/location vertically */ + .list-under-upcoming { + flex-direction: column; + gap: 16px; + margin: 0 16px 30px; + font-size: 14px; + } + + .Requirements-container { + margin: 0 16px 24px; + } + + .third-section { + grid-template-columns: repeat(3, 1fr); + gap: 12px; + margin: 0 16px 24px; + } + + .final-section { + margin: 0 12px 30px; + } + + th, td { + padding: 12px 8px; + font-size: 12px; + } +} + + +/* + SMALL MOBILE — max-width: 480px + iPhone SE (375px) +*/ +@media (max-width: 480px) { + + .header h1 { + font-size: 14px; + } + + .header h6 { + display: none; + } + + /* Hide cancel button on SE to save header space */ + .cancel-btn { + display: none; + } + + .create-btn { + width: 80px; + font-size: 11px; + } + + .event-title-row h1 { + font-size: 16px; + } + + .event-image-wrapper img { + max-height: 200px; + } + + .image-status-badge { + top: 10px; + right: 10px; + font-size: 11px; + padding: 5px 12px; + } + + + .third-section { + grid-template-columns: 1fr; + gap: 10px; + } + + .card h3 { + font-size: 22px; + } + + th, td { + padding: 10px 6px; + font-size: 11px; + } + + .status { + font-size: 10px; + width: 80px; + padding: 4px 8px; + } +} \ No newline at end of file diff --git a/capstone project/event-details.html b/capstone project/event-details.html new file mode 100644 index 0000000..31e7c65 --- /dev/null +++ b/capstone project/event-details.html @@ -0,0 +1,248 @@ + + + + + + + Document + + + + + + + + + + + + +
+ + +
+ +
+ + + +
+

Events

+
Browse and manage all your events
+
+ +
+ + + + +
+
+ + +
+ + +
+

Coastal Clean-Up Exercise

+ Published +
+ + +
+ + Published +
+ +
+ + +
+

Events Description

+
+ + +
+
+

+ Join us for a community coastal clean-up exercise aimed at reducing plastic waste and protecting + marine life along the Lekki Waterfront. This initiative brings together passionate volunteers + who are committed to keeping our beaches and waterways clean. +

+

+ During this event, volunteers will work in small groups to collect plastic waste, sort + recyclable materials, and safely dispose of debris found along the shoreline. All necessary + clean-up materials such as gloves, waste bags, and safety gear will be provided by the + organizers. +

+

+ Beyond the clean-up activity, the event will also include a short environmental awareness + session where participants will learn about the impact of plastic pollution on marine ecosystems + and how small everyday actions can contribute to a healthier environment. +

+

+ Whether you are passionate about environmental sustainability, looking to give back to the + community, or simply want to spend a meaningful morning outdoors, this event is a great + opportunity to make a positive impact while connecting with like-minded individuals. +

+
+
+ + +
+

8:00am - 12:00Noon

+

June 12, 2026

+

Lekki waterfront, Lagos

+
+ + +
+
+

Volunteers Requirements

+
+
+
    +
  • Must be 16+
  • +
  • Wear comfortable clothes
  • +
  • Bring water bottle
  • +
+
+
+ + +
+
+

40

+

total events

+
+
+

59

+

upcoming events

+
+
+

324

+

total + volunteers

+
+
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameEmailDateRegistration
John Doejohndoe@email.comMarch 10, 2026Confirmed +

...

+
John Smithjohnsmith@email.comJune 23, 2026Confirmed +

...

+
Mary Johnsonmaryjohnson@email.comJune 23, 2026Confirmed +

...

+
Chinyere Okaforahmedbello@email.comJune 23, 2026Confirmed +

...

+
Emeka Nwosuemekanwosu@email.comJune 23, 2026Confirmed +

...

+
+
+ + + + +
+
+ + + + + + \ No newline at end of file diff --git a/capstone project/events-listing.css b/capstone project/events-listing.css new file mode 100644 index 0000000..900a3bb --- /dev/null +++ b/capstone project/events-listing.css @@ -0,0 +1,410 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +body { + font-family: "Poppins", sans-serif; + font-weight: 400; + font-size: 14px; +} + +.main-container { + display: flex; +} + +/* ── SIDEBAR ── */ +.sidebar { + width: 200px; + min-height: 100vh; + background: #1f3a5f; + color: #ffffff; + padding: 0 20px 20px 20px; + position: fixed; + top: 0; + left: 0; + overflow-y: auto; + z-index: 100; + transition: transform 0.3s ease; +} + +.sidebar a:hover li { + background: rgba(255, 255, 255, 0.15); + border-radius: 8px; + padding-left: 16px; + transition: all 0.2s ease; +} + +.sidebar a.active li { + +background: #057df2; + border-radius: 3px; + padding-left: 13px; +} + +.logo { + margin-top: 0; + margin-bottom: 30px; + padding: 0 0px 24px; + height: 130px; + width: 150px; + object-fit: cover; +} + +.sidebar a { + list-style: none; + text-decoration: none; + color: #ffffff; +} + +.sidebar li { + padding: 12px; + margin-bottom: 5px; + cursor: pointer; +} + +/* ── HAMBURGER ── */ +.hamburger { + display: none; + flex-direction: column; + justify-content: center; + gap: 5px; + cursor: pointer; + background: none; + border: none; + padding: 4px; +} + +.hamburger span { + display: block; + width: 24px; + height: 2px; + background-color: #1f3a5f; + border-radius: 2px; + transition: all 0.3s ease; +} + +/* Overlay */ +.sidebar-overlay { + display: none; + position: fixed; + inset: 0; + background: rgba(0, 0, 0, 0.4); + z-index: 99; +} + +.sidebar-overlay.active { + display: block; +} + +/* ── MAIN CONTENT ── */ +.main-content { + flex: 1; + background: #ffffff; + margin-left: 200px; +} + +/* ── HEADER ── */ +.header { + display: flex; + justify-content: space-between; + align-items: center; + margin-bottom: 30px; + background-color: #f7f8f9; + color: #1f3a5f; + width: 100%; + padding: 16px 24px; + position: sticky; + top: 0; + z-index: 99; +} + +.header h1 { + font-weight: 600; + margin: 0; +} + +.header h6 { + font-weight: 400; + color: #6b7c93; + margin-top: 2px; +} + +.header-btn { + display: flex; + align-items: center; + gap: 16px; +} + +header button { + display: flex; + justify-content: center; + align-items: center; +} + +header a { + color: #1f3a5f; +} + +.create-btn { + width: 120px; + height: 35px; + border-radius: 10px; + background-color: #1f3a5f; + color: #ffffff; + padding: 10px; + border: none; + cursor: pointer; +} + +/* ── FILTER / SEARCH ROW ── */ +.first-section { + display: flex; + align-items: center; + justify-content: space-between; + padding: 5px 16px 50px 16px; + margin-bottom: 50px; + border-bottom: 1px solid rgba(107, 124, 147, 0.3); +} + +.first-part { + display: flex; + align-items: center; + gap: 50px; +} + +.tab { + font-size: 14px; + font-weight: 500; + color: rgba(107, 124, 147, 1); + cursor: pointer; + padding-bottom: 4px; + border-bottom: 2px solid transparent; + margin: 0; +} + +.tab.active-tab { + color: #057df2; + border-bottom: 2px solid #057df2; +} + +.first-part .tab:hover { + color: #057df2; + border-bottom: 2px solid #057df2; +} + +.second-part { + display: flex; + justify-content: center; + align-items: center; + gap: 0; + border: 1px solid rgba(107, 124, 147, 0.4); + border-radius: 6px; + overflow: hidden; + background: white; +} + +input { + border: none; + outline: none; + padding: 12px 18px; + font-size: 13px; + width: 220px; + color: #1e2d4a; +} + +input::placeholder { + color: rgba(107, 124, 147, 0.7); + font-size: 12px; +} + +.search-btn { + background: #f7f8f9; + border: none; + padding: 12px 20px; + cursor: pointer; + color: #057df2; + display: flex; + align-items: center; + justify-content: center; +} + +.search-btn:hover { + background: #0369d1; + color: #ffffff; +} + +/* ── TABLE ── */ +.second-section { + background: rgba(228, 228, 228, 0.47); + border: 1px solid rgba(107, 124, 147, 0.5); + border-radius: 10px; + margin: 0 16px 40px; + overflow-x: auto; +} + +table { + width: 100%; + border-collapse: collapse; + min-width: 500px; +} + +th, td { + padding: 16px 12px; + text-align: center; + border-bottom: 1px solid rgba(107, 124, 147, 0.5); +} + +tbody tr { + border-bottom: 1px solid rgba(107, 124, 147, 0.5); +} + +thead tr { + background: #d9d9d9; + color: #1f3a5f; + border-bottom: 2px solid rgba(107, 124, 147, 1); +} + +tbody tr:last-child { + border-bottom: none; +} + +.status { + padding: 6px 14px; + border-radius: 5px; + color: #f7f8f9; + text-align: center; + display: inline-flex; + justify-content: center; + align-items: center; + font-size: 13px; + font-weight: 400; + margin-top: 10px; + width: 100px; + max-width: 140px; +} + +.upcoming { background: #ffb347; } +.completed { background: #057df2; } +.published { background: #2e8b57; } +.draft { background: #6b7c93; } + + +/* + TABLET — max-width: 1024px + */ +@media (max-width: 1024px) { + input { + width: 160px; + } +} + + +/* + MOBILE — max-width: 768px + */ +@media (max-width: 768px) { + + /* Sidebar slides off-screen */ + .sidebar { + transform: translateX(-100%); + width: 220px; + z-index: 200; + } + + .sidebar.open { + transform: translateX(0); + } + + .main-content { + margin-left: 0; + } + + .hamburger { + display: flex; + } + + .header { + padding: 12px 16px; + margin-bottom: 20px; + } + + .header h1 { + font-size: 16px; + } + + .header h6 { + font-size: 11px; + } + + .create-btn { + width: 100px; + font-size: 12px; + } + + /* Stack tabs + search vertically */ + .first-section { + flex-direction: column; + align-items: flex-start; + gap: 16px; + padding: 5px 12px 30px 12px; + margin-bottom: 24px; + } + + .second-part { + width: 100%; + } + + input { + width: 100%; + flex: 1; + } + + .second-section { + margin: 0 12px 30px; + } + + th, td { + padding: 12px 8px; + font-size: 12px; + } +} + + +/* + SMALL MOBILE — max-width: 480px + iPhone SE (375px) + */ +@media (max-width: 480px) { + + .header h1 { + font-size: 14px; + } + + .header h6 { + display: none; /* too cramped on SE */ + } + + .create-btn { + display: none; + } + + .tab { + font-size: 12px; + } + + .first-part { + gap: 16px; + } + + th, td { + padding: 10px 6px; + font-size: 11px; + } + + .status { + font-size: 10px; + padding: 4px 2px; + } +} \ No newline at end of file diff --git a/capstone project/events-listing.html b/capstone project/events-listing.html new file mode 100644 index 0000000..2ec0ad5 --- /dev/null +++ b/capstone project/events-listing.html @@ -0,0 +1,233 @@ + + + + + + + Document + + + + + + + + + + + + +
+ + +
+ +
+ + + +
+

Events

+
Browse and manage all your events
+
+ +
+ + + +
+
+ +
+
+

All

+

Draft

+

Published

+

Cancelled

+ + +
+
+ + +
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Event NameLocationDateVolunteersStatus
Beach CleanupLekki waterfrontJune 15, 202619/35upcoming...
Food distributionCoastal Road EYC.June 23, 202619/35published...
Food distributionCoastal Road EYC.June 23, 202619/35Draft...
Food distributionCoastal Road EYC.June 23, 202619/35Completed...
Food distributionCoastal Road EYC.June 23, 202619/35completed...
Beach CleanupLekki waterfrontJune 15, 202619/35upcoming...
Food distributionCoastal Road EYC.June 23, 202619/35completed...
Food distributionCoastal Road EYC.June 23, 202619/35Draft...
Food distributionCoastal Road EYC.June 23, 202619/35Draft...
Food distributionCoastal Road EYC.June 23, 202619/35completed...
Food distributionCoastal Road EYC.June 23, 202619/35completed...
Beach CleanupLekki waterfrontJune 15, 202619/35upcoming...
Food distributionCoastal Road EYC.June 23, 202619/35completed...
+
+ +
+
+ + + + + + \ No newline at end of file diff --git a/capstone project/images/Allura - Trophy 1.png b/capstone project/images/Allura - Trophy 1.png new file mode 100644 index 0000000..2464b1d Binary files /dev/null and b/capstone project/images/Allura - Trophy 1.png differ diff --git a/capstone project/images/Ellipse 34.png b/capstone project/images/Ellipse 34.png new file mode 100644 index 0000000..c25b057 Binary files /dev/null and b/capstone project/images/Ellipse 34.png differ diff --git a/capstone project/images/Ellipse 35.png b/capstone project/images/Ellipse 35.png new file mode 100644 index 0000000..d2d8761 Binary files /dev/null and b/capstone project/images/Ellipse 35.png differ diff --git a/capstone project/images/Ellipse 36.png b/capstone project/images/Ellipse 36.png new file mode 100644 index 0000000..5431c02 Binary files /dev/null and b/capstone project/images/Ellipse 36.png differ diff --git a/capstone project/images/Ellipse 37.png b/capstone project/images/Ellipse 37.png new file mode 100644 index 0000000..eb8a35e Binary files /dev/null and b/capstone project/images/Ellipse 37.png differ diff --git a/capstone project/images/Ellipse 38.png b/capstone project/images/Ellipse 38.png new file mode 100644 index 0000000..26cc626 Binary files /dev/null and b/capstone project/images/Ellipse 38.png differ diff --git a/capstone project/images/Ellipse 39.png b/capstone project/images/Ellipse 39.png new file mode 100644 index 0000000..d69b4cd Binary files /dev/null and b/capstone project/images/Ellipse 39.png differ diff --git a/capstone project/images/Vector.png b/capstone project/images/Vector.png new file mode 100644 index 0000000..fde68c5 Binary files /dev/null and b/capstone project/images/Vector.png differ diff --git a/capstone project/images/We Are Women - Together (1) 1.png b/capstone project/images/We Are Women - Together (1) 1.png new file mode 100644 index 0000000..6e4a552 Binary files /dev/null and b/capstone project/images/We Are Women - Together (1) 1.png differ diff --git a/capstone project/images/aidloop logo with dark background.png b/capstone project/images/aidloop logo with dark background.png new file mode 100644 index 0000000..105435f Binary files /dev/null and b/capstone project/images/aidloop logo with dark background.png differ diff --git a/capstone project/images/ant-design_team-outlined.png b/capstone project/images/ant-design_team-outlined.png new file mode 100644 index 0000000..2e40718 Binary files /dev/null and b/capstone project/images/ant-design_team-outlined.png differ diff --git a/capstone project/images/calendar.png b/capstone project/images/calendar.png new file mode 100644 index 0000000..a02b78b Binary files /dev/null and b/capstone project/images/calendar.png differ diff --git a/capstone project/images/eos-icons_hourglass.png b/capstone project/images/eos-icons_hourglass.png new file mode 100644 index 0000000..36f0183 Binary files /dev/null and b/capstone project/images/eos-icons_hourglass.png differ diff --git a/capstone project/images/fluent-color_checkmark-circle-32 (1).png b/capstone project/images/fluent-color_checkmark-circle-32 (1).png new file mode 100644 index 0000000..c2bb253 Binary files /dev/null and b/capstone project/images/fluent-color_checkmark-circle-32 (1).png differ diff --git a/capstone project/images/fluent-color_checkmark-circle-32.png b/capstone project/images/fluent-color_checkmark-circle-32.png new file mode 100644 index 0000000..c2bb253 Binary files /dev/null and b/capstone project/images/fluent-color_checkmark-circle-32.png differ diff --git a/capstone project/images/hero image aidloop.jpg b/capstone project/images/hero image aidloop.jpg new file mode 100644 index 0000000..7fbe358 Binary files /dev/null and b/capstone project/images/hero image aidloop.jpg differ diff --git a/capstone project/images/ic_baseline-mail.png b/capstone project/images/ic_baseline-mail.png new file mode 100644 index 0000000..62a69b7 Binary files /dev/null and b/capstone project/images/ic_baseline-mail.png differ diff --git a/capstone project/images/icon-park-solid_success.png b/capstone project/images/icon-park-solid_success.png new file mode 100644 index 0000000..0d445f0 Binary files /dev/null and b/capstone project/images/icon-park-solid_success.png differ diff --git a/capstone project/images/logo aidloop.jpg b/capstone project/images/logo aidloop.jpg new file mode 100644 index 0000000..f251515 Binary files /dev/null and b/capstone project/images/logo aidloop.jpg differ diff --git a/capstone project/images/mdi_arrow-up.png b/capstone project/images/mdi_arrow-up.png new file mode 100644 index 0000000..6b48ad1 Binary files /dev/null and b/capstone project/images/mdi_arrow-up.png differ diff --git a/capstone project/images/noto_calendar.png b/capstone project/images/noto_calendar.png new file mode 100644 index 0000000..512f7f4 Binary files /dev/null and b/capstone project/images/noto_calendar.png differ diff --git a/capstone project/images/noto_trophy.png b/capstone project/images/noto_trophy.png new file mode 100644 index 0000000..c163725 Binary files /dev/null and b/capstone project/images/noto_trophy.png differ diff --git a/capstone project/images/ph_anchor-simple-fill.png b/capstone project/images/ph_anchor-simple-fill.png new file mode 100644 index 0000000..476dfba Binary files /dev/null and b/capstone project/images/ph_anchor-simple-fill.png differ diff --git a/capstone project/images/teenyicons_tick-circle-outline.png b/capstone project/images/teenyicons_tick-circle-outline.png new file mode 100644 index 0000000..b46760f Binary files /dev/null and b/capstone project/images/teenyicons_tick-circle-outline.png differ diff --git a/capstone project/images/volunteers bending down.png b/capstone project/images/volunteers bending down.png new file mode 100644 index 0000000..34b6050 Binary files /dev/null and b/capstone project/images/volunteers bending down.png differ diff --git a/capstone project/organization-profile.css b/capstone project/organization-profile.css new file mode 100644 index 0000000..6fde04a --- /dev/null +++ b/capstone project/organization-profile.css @@ -0,0 +1,581 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +body { + font-family: "Poppins", sans-serif; + font-weight: 400; + font-size: 14px; +} + +.main-container { + display: flex; +} + +/* ── SIDEBAR ── */ +.sidebar { + width: 200px; + min-height: 100vh; + background: #1f3a5f; + color: #ffffff; + padding: 0 20px 20px 20px; + position: fixed; + top: 0; + left: 0; + overflow-y: auto; + z-index: 100; + transition: transform 0.3s ease; +} + +.sidebar a:hover li { + background: rgba(255, 255, 255, 0.15); + border-radius: 8px; + padding-left: 16px; + transition: all 0.2s ease; +} + +.sidebar a.active li { + background: rgba(255, 255, 255, 0.25); + border-radius: 8px; + border-left: 3px solid #ffffff; + padding-left: 13px; +} + +.logo { + margin-top: 0; + margin-bottom: 30px; + padding: 0 0px 24px; + height: 130px; + width: 150px; + object-fit: cover; +} + +.sidebar a { + list-style: none; + text-decoration: none; + color: #ffffff; +} + +.sidebar li { + padding: 12px; + margin-bottom: 5px; + cursor: pointer; +} + +/* ── HAMBURGER ── */ +.hamburger { + display: none; + flex-direction: column; + justify-content: center; + gap: 5px; + cursor: pointer; + background: none; + border: none; + padding: 4px; +} + +.hamburger span { + display: block; + width: 24px; + height: 2px; + background-color: #1f3a5f; + border-radius: 2px; + transition: all 0.3s ease; +} + +/* Overlay */ +.sidebar-overlay { + display: none; + position: fixed; + inset: 0; + background: rgba(0, 0, 0, 0.4); + z-index: 99; +} + +.sidebar-overlay.active { + display: block; +} + +/* ── MAIN CONTENT ── */ +.main-content { + flex: 1; + background: #ffffff; + margin-left: 200px; +} + +/* ── HEADER ── */ +.header { + display: flex; + justify-content: space-between; + align-items: center; + background-color: #f7f8f9; + color: #1f3a5f; + width: 100%; + padding: 16px 24px; + position: sticky; + top: 0; + z-index: 99; + margin-bottom: 40px; +} + +.header h1 { + font-weight: 600; + margin: 0; +} + +.header h6 { + font-weight: 400; + color: #6b7c93; + margin-top: 2px; +} + +.header-btn { + display: flex; + align-items: center; + gap: 16px; +} + +header button { + display: flex; + justify-content: center; + align-items: center; +} + +.fontawesome { + color: #1f3a5f; +} + +.create-btn { + width: 120px; + height: 35px; + border-radius: 10px; + background-color: #1f3a5f; + color: #ffffff; + padding: 10px; + cursor: pointer; + border: none; +} + +/* ── FIRST SECTION ── */ +.first-section { + display: flex; + justify-content: center; + align-items: flex-start; + flex-direction: column; + gap: 15px; + background-color: #f7f8f9; + padding: 50px; + border-radius: 20px; + width: 65%; + margin: 0 auto 40px; +} + +.first-section-container { + display: flex; + flex-direction: column; + gap: 20px; + width: 100%; +} + +.first-part { + display: flex; + justify-content: flex-start; + align-items: center; + gap: 12px; +} + +.AL { + display: flex; + flex-direction: column; + gap: 10px; +} + +.AL h1 { + color: #ffffff; + background-color: #1f3a5f; + display: flex; + justify-content: center; + padding: 25px 18px; + border-radius: 10px; +} + +.AL p { + background-color: #e6f9f0; + color: #1f3a5f; + padding: 7px 16px; + border-radius: 15px; + font-size: 13px; + display: flex; + align-items: center; + gap: 6px; +} + +.AL p::before { + content: ''; + width: 8px; + height: 8px; + background-color: #28a745; + border-radius: 50%; + display: inline-block; +} + +.Aidloop-foundation { + color: #1f3a5f; +} + +/* ── CONTACT GRID ── */ +.second-part { + display: flex; + justify-content: flex-end; + align-items: center; +} + +.second-part1, +.second-part2 { + display: flex; + gap: 16px; + margin-left: 100px; +} + +.contact-grid { + display: flex; + flex-direction: column; + gap: 10px; +} + +.box { + border: 1px solid #ddd; + border-radius: 8px; + width: 200px; + height: 70px; + background: #e3e3e3; + color: #2a2a2a; + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; + gap: 8px; +} + +/* ── SECOND SECTION ── */ +.second-section { + background-color: #f7f8f9; + padding: 40px 50px; + border-radius: 20px; + width: 70%; + margin: 0 auto 40px; +} + +.second-section-container { + display: flex; + flex-direction: column; + justify-content: center; + gap: 20px; + align-items: center; +} + +.second-section-header { + color: #1f3a5f; +} + +.second-section-text { + background-color: rgba(5, 125, 242, 0.19); + color: #2a2a2a; + text-align: center; + padding: 50px; + border-radius: 10px; + display: flex; + gap: 5px; + line-height: 1.7; +} + +/* ── THIRD SECTION: stat cards ── */ +.third-section { + display: flex; + justify-content: center; + align-items: center; + gap: 60px; + padding: 40px 24px; + flex-wrap: wrap; /* allows cards to wrap on smaller screens */ +} + +.card { + background: #f5f5f5; + border-radius: 12px; + padding: 20px; + width: 180px; + display: flex; + flex-direction: row; + align-items: flex-start; + gap: 10px; + box-shadow: 0 1px 8px rgba(0, 0, 0, 0.08); +} + +.card-image { + border-radius: 10px; + padding: 10px; + display: flex; + align-items: center; + justify-content: center; + background-color: #e8f4ff; +} + +.card-image img { + width: 25px; + height: 25px; +} + +.card-text { + display: flex; + flex-direction: column; + font-size: 11px; + color: #888; + text-transform: uppercase; + letter-spacing: 0.5px; + text-align: center; +} + +.card-text > p { + font-size: 24px; + font-weight: bold; + color: #1f3a5f; + margin: 4px 0; +} + +.arrow-up { + display: flex; + align-items: center; + flex-direction: column; + gap: 4px; + background-color: #e8f5ee; + border-radius: 6px; + padding: 2px 6px; +} + +.arrow-up img { + width: 12px; + height: 12px; +} + +.arrow-up p { + font-size: 11px ; + font-weight: normal; + color: #1f3a5f ; + margin: 0 ; +} +.first{ + background-color:rgba(5, 125, 242, 0.26) + + +} +.second{ + background-color: rgba(46, 139, 87 , 0.51); +} +.third{ + background-color: rgba(255, 179, 71, 0.29); + +} + + + +/* + TABLET — max-width: 1024px + */ +@media (max-width: 1024px) { + + .first-section { + padding: 30px 24px; + width: calc(100% - 48px); + } + + .second-part1, + .second-part2 { + margin-left: 0; + gap: 12px; + } + + .box { + width: 160px; + height: 60px; + font-size: 12px; + } + + .second-section { + width: calc(100% - 48px); + padding: 30px 24px; + } + + .second-section-text { + padding: 30px; + } + + .third-section { + gap: 24px; + } +} + + +/* + MOBILE — max-width: 768px + */ +@media (max-width: 768px) { + + .sidebar { + transform: translateX(-100%); + width: 220px; + z-index: 200; + } + + .sidebar.open { + transform: translateX(0); + } + + .main-content { + margin-left: 0; + } + + .hamburger { + display: flex; + } + + .header { + padding: 12px 16px; + margin-bottom: 24px; + } + + .header h1 { + font-size: 16px; + } + + .header h6 { + font-size: 11px; + } + + .create-btn { + width: 100px; + font-size: 12px; + } + + /* Profile card stretches full width */ + .first-section { + width: calc(100% - 32px); + padding: 24px 16px; + margin: 0 16px 30px; + border-radius: 12px; + } + + /* Stack org name + contact vertically */ + .first-section-container { + gap: 24px; + } + + /* Contact grid: stack the two rows */ + .second-part { + justify-content: flex-start; + } + + .contact-grid { + width: 100%; + } + + .second-part1, + .second-part2 { + margin-left: 0; + flex-wrap: wrap; + gap: 10px; + } + + .box { + width: calc(50% - 5px); + height: 56px; + font-size: 12px; + } + + /* About section */ + .second-section { + width: calc(100% - 32px); + margin: 0 16px 30px; + padding: 24px 16px; + border-radius: 12px; + } + + .second-section-text { + padding: 20px; + font-size: 13px; + text-align: left; + } + + /* Cards wrap into 2 per row */ + .third-section { + gap: 16px; + padding: 24px 16px; + justify-content: center; + } + + .card { + width: calc(50% - 8px); + min-width: 140px; + } +} + + +/* + SMALL MOBILE — max-width: 480px + iPhone SE (375px) + */ +@media (max-width: 480px) { + + .header h1 { + font-size: 14px; + } + + .header h6 { + display: none; + } + + .create-btn { + width: 90px; + font-size: 11px; + } + + .AL h1 { + padding: 18px 14px; + font-size: 20px; + } + + .Aidloop-foundation h1 { + font-size: 16px; + } + + /* Boxes go full width on SE */ + .box { + width: 100%; + height: 50px; + } + + .second-part1, + .second-part2 { + flex-direction: column; + gap: 8px; + } + + .second-section-text { + padding: 16px; + font-size: 12px; + } + + /* Cards go 1 per row on SE */ + .third-section { + flex-direction: column; + align-items: center; + gap: 12px; + padding: 16px; + } + + .card { + width: 100%; + max-width: 300px; + } +} diff --git a/capstone project/organization-profile.html b/capstone project/organization-profile.html new file mode 100644 index 0000000..a507d3e --- /dev/null +++ b/capstone project/organization-profile.html @@ -0,0 +1,204 @@ + + + + + + + Document + + + + + + + + + + + + +
+ + +
+ +
+ + + +
+

Organization Profile

+
Manage your organization information.
+
+ +
+ + + +
+
+ + +
+
+ +
+
+

AL

+

Verified Org

+
+
+

Aidloop Foundation

+

Non-Profit Volunteer Organization

+
+
+ +
+
+
+
+ + contact@gmail.com +
+
+ + +234 8165434534 +
+
+
+
+ www.aidloop.org +
+
+ + Victoria Island, Lagos +
+
+
+
+ +
+
+ + +
+
+
+

About Organization

+
+
+

AidLoop connects volunteers with meaningful community events such as + environmental clean-ups, charity drives, and social impact activities. Our mission + is to make volunteering accessible, rewarding, and impactful for every participant. +

+
+
+
+ + +
+
+
+ +
+
+ TOTAL EVENTS CREATED +

24

+
+ +

+5

+

this month

+
+
+
+ +
+
+ +
+
+ TOTAL VOLUNTEERS +

318

+
+ +

+318

+

this month

+
+
+
+ +
+
+ +
+
+ CERTIFICATES ISSUED +

157

+
+
+ +

+18

+
+
+

this month

+
+
+
+
+
+ +
+
+ + + + + + \ No newline at end of file diff --git a/capstone project/organizers-dashboard.css b/capstone project/organizers-dashboard.css new file mode 100644 index 0000000..b944854 --- /dev/null +++ b/capstone project/organizers-dashboard.css @@ -0,0 +1,390 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +body { + font-family: "Poppins", sans-serif; + font-weight: 400; + font-size: 14px; +} + +.main-container { + display: flex; +} + +/* ── SIDEBAR ── */ +.sidebar { + width: 200px; + min-height: 100vh; + background: #1f3a5f; + color: #ffffff; + padding: 0 20px 20px 20px; + position: fixed; + top: 0; + left: 0; + overflow-y: auto; + z-index: 100; + transition: transform 0.3s ease; +} + +.sidebar a:hover li { + background: rgba(255, 255, 255, 0.15); + border-radius: 8px; + padding-left: 16px; + transition: all 0.2s ease; +} + +.sidebar a.active li { + +background: #057df2; + border-radius: 3px; + padding-left: 13px; +} + + +.logo { + margin-top: 0; + margin-bottom: 30px; + padding: 0 0px 24px; + height: 130px; + width: 150px; + object-fit: cover; +} + +.sidebar a { + list-style: none; + text-decoration: none; + color: #ffffff; +} + +.sidebar li { + padding: 12px; + margin-bottom: 5px; + cursor: pointer; +} + +/* ── HAMBURGER BUTTON (hidden on desktop) ── */ +.hamburger { + display: none; + flex-direction: column; + justify-content: center; + gap: 5px; + cursor: pointer; + background: none; + border: none; + padding: 4px; +} + +.hamburger span { + display: block; + width: 24px; + height: 2px; + background-color: #1f3a5f; + border-radius: 2px; + transition: all 0.3s ease; +} + +/* Overlay behind sidebar on mobile */ +.sidebar-overlay { + display: none; + position: fixed; + inset: 0; + background: rgba(0, 0, 0, 0.4); + z-index: 99; +} + +.sidebar-overlay.active { + display: block; +} + +/* ── MAIN CONTENT ── */ +.main-content { + flex: 1; + background: #ffffff; + margin-left: 200px; +} + +/* ── HEADER ── */ +.header { + display: flex; + justify-content: space-between; + align-items: center; + margin-bottom: 30px; + background-color: #f7f8f9; + color: #1f3a5f; + width: 100%; + padding: 16px 24px; + position: sticky; + top: 0; + z-index: 99; +} + +.header h1 { + font-weight: 600; + margin: 0; +} + +.header-btn { + display: flex; + align-items: center; + gap: 16px; +} + +header button { + display: flex; + justify-content: center; + align-items: center; +} + +header a { + color: #1f3a5f; +} + +.create-btn { + width: 120px; + height: 35px; + border-radius: 10px; + background-color: #1f3a5f; + color: #ffffff; + padding: 10px; + border: none; + cursor: pointer; +} + +/* ── DASHBOARD LABEL ── */ +.Dashboard { + color: #1f3a5f; + margin-left: 5px; + margin-bottom: 40px; + padding: 0 16px; +} + +/* ── STAT CARDS ── */ +.first-section { + display: grid; + grid-template-columns: repeat(4, 1fr); + gap: 20px; + margin-bottom: 25px; + margin-left: 5px; + margin-right: 5px; + border-bottom: 1px solid #6b7c93; + padding: 0 16px 50px; +} + +.card { + background-color: #f7f8f9; + padding: 20px; + border-radius: 8px; + box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1); + border: 1px solid #6b7c93; + display: flex; + justify-content: center; + align-items: center; + flex-direction: column; +} + +.card h3 { + width: 100%; + border-bottom: 1px solid #6b7c93; + padding-bottom: 10px; + margin-bottom: 10px; + display: flex; + justify-content: center; + align-items: center; +} + +.under-card { + color: #2a2a2a; + text-align: center; + font-size: 13px; +} + +#fontawesome { + color: #057df2; +} + +/* ── RECENT EVENTS ── */ +.recent-event { + color: #1f3a5f; + margin-left: 5px; + margin-bottom: 30px; + padding: 0 16px; +} + +/* ── TABLE SECTION ── */ +.second-section { + background: rgba(228, 228, 228, 0.47); + border: 1px solid rgba(107, 124, 147, 0.5); + border-radius: 10px; + margin: 0 16px 40px; + overflow-x: auto; /* horizontal scroll if table overflows */ +} + +table { + width: 100%; + border-collapse: collapse; + min-width: 500px; /* prevents table from getting too squished */ +} + +th, +td { + padding: 16px 12px; + text-align: center; + border-bottom: 1px solid rgba(107, 124, 147, 0.5); +} + +tbody tr { + border-bottom: 1px solid rgba(107, 124, 147, 0.5); +} + +thead tr { + background: rgba(217, 217, 217, 0.65); + border-bottom: 2px solid rgba(107, 124, 147, 1); +} + +tbody tr:last-child { + border-bottom: none; +} + +.status { + padding: 6px 14px; + border-radius: 5px; + color: #f7f8f9; + text-align: center; + display: inline-flex; + justify-content: center; + align-items: center; + font-size: 13px; + font-weight: 400; + margin-top: 10px; + width: 100px; + max-width: 140px; +} + +.upcoming { background: #ffb347; } +.completed { background: #057df2; } +.published { background: #2e8b57; } +.draft { background: #6b7c93; } + + +/* + TABLET — max-width: 1024px + */ +@media (max-width: 1024px) { + .first-section { + grid-template-columns: repeat(2, 1fr); + } +} + + +/* + MOBILE — max-width: 768px + Covers iPhone XR (414px), SE (375px), + and everything in between + */ +@media (max-width: 768px) { + + /* Sidebar slides off-screen by default */ + .sidebar { + transform: translateX(-100%); + width: 220px; + z-index: 200; + } + + /* JS adds .open to show it */ + .sidebar.open { + transform: translateX(0); + } + + /* Main content takes full width */ + .main-content { + margin-left: 0; + } + + /* Show hamburger button */ + .hamburger { + display: flex; + } + + .header { + padding: 12px 16px; + margin-bottom: 20px; + } + + .header h1 { + font-size: 16px; + } + + .create-btn { + width: 100px; + font-size: 12px; + } + + /* 2-column cards on tablet/large mobile */ + .first-section { + grid-template-columns: repeat(2, 1fr); + padding: 0 12px 30px; + gap: 12px; + } + + .Dashboard, + .recent-event { + padding: 0 12px; + } + + .second-section { + margin: 0 12px 30px; + } + + th, td { + padding: 12px 8px; + font-size: 12px; + } +} + + +/* + SMALL MOBILE — max-width: 480px + iPhone SE (375px) and smaller + */ +@media (max-width: 480px) { + + .header h1 { + font-size: 14px; + } + + .create-btn { + display: none; /* hide on very small screens to save space */ + } + + /* 1-column cards on small phones */ + .first-section { + grid-template-columns: 1fr 1fr; + gap: 10px; + padding: 0 10px 24px; + } + + .card { + padding: 14px 10px; + } + + .card h3 { + font-size: 20px; + } + + .under-card { + font-size: 11px; + } + + th, td { + padding: 10px 6px; + font-size: 11px; + } + + .status { + font-size: 10px; + padding: 4px 2px; + } +} \ No newline at end of file diff --git a/capstone project/organizers-dashboard.html b/capstone project/organizers-dashboard.html new file mode 100644 index 0000000..16eafcf --- /dev/null +++ b/capstone project/organizers-dashboard.html @@ -0,0 +1,178 @@ + + + + + + + Document + + + + + + + + + + + + +
+ + +
+ +
+ + + +

Welcome Back

+ +
+ + + +
+
+ +
+

Dashboard

+
+ +
+
+

80

+

total events

+
+
+

42

+

upcoming events

+
+
+

17

+

completed + events

+
+
+

324

+

total + volunteers

+
+
+ +
+

Recent Events

+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Event NameLocationDateVolunteersStatus
Beach CleanupLekki waterfrontJune 15, 202619/35upcoming...
Food distributionCoastal Road EYC.June 23, 202619/35published...
Food distributionCoastal Road EYC.June 23, 202619/35Draft...
Food distributionCoastal Road EYC.June 23, 202619/35Completed...
Food distributionCoastal Road EYC.June 23, 202619/35completed...
+
+ +
+
+ + + + + + \ No newline at end of file diff --git a/capstone project/successful-verification.css b/capstone project/successful-verification.css new file mode 100644 index 0000000..0130f20 --- /dev/null +++ b/capstone project/successful-verification.css @@ -0,0 +1,88 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + + +body { + background-color: #ffffff; + display: flex; + justify-content: center; + align-items: center; + min-height: 100vh; + font-family: "Poppins", sans-serif; + font-weight: 300px; + font-size: 14px; +} + + +main { + width: 100%; + max-width: 800px; /* controls how wide the content stretches */ + padding: 40px 24px; + text-align: center; +} + + +.image img { + width: 160px; + height: 160px; + border-radius: 18px; +} + +h1 { + font-size: 22px; + font-weight: 700; + color: #1f3a5f; + margin-bottom: 70px; +} + +/* Full-width grey divider line */ +.divider { + border: none; + border-top: 1px solid #e0e0e0; + margin-bottom: 24px; + width: 100%; +} + +.main-text { + font-size: 14px; + color: rgba(0, 0, 0, 0.80); + line-height: 1.7; + margin-bottom: 80px; +} +.other-text { + font-size: 14px; + color: red; + line-height: 1.7; + margin-bottom: 20px; +} +.other-text a{ + text-decoration: none; + color: #057DF2; +} +.final-text { + font-size: 14px; + color: rgba(76, 76, 76, 0.60); + line-height: 1.7; + margin-bottom: 50px; +} + + +button { + width: 80%; + padding: 16px; + background-color: #1f3a5f; + color: #ffffff; + border: none; + border-radius: 8px; + font-size: 15px; + font-weight: 500; + cursor: pointer; + margin-bottom: 30px; +} + +button:hover { + background-color: #2a4f82; +} \ No newline at end of file diff --git a/capstone project/successful-verification.html b/capstone project/successful-verification.html new file mode 100644 index 0000000..61db071 --- /dev/null +++ b/capstone project/successful-verification.html @@ -0,0 +1,39 @@ + + + + + + Document + + + + + + +
+
+ mail icon +
+ +

Email Verified Successfully

+ +
+ +

+ Your email has been verified. You can now access
+ your dashboard. +

+ +

+ Change Email Address +

+
+

Back to Login

+ + +
+ + + \ No newline at end of file diff --git a/capstone project/volunteer-management.css b/capstone project/volunteer-management.css new file mode 100644 index 0000000..b5cee3e --- /dev/null +++ b/capstone project/volunteer-management.css @@ -0,0 +1,427 @@ +*{ + margin: 0; + padding: 0; + box-sizing: border-box; +} +body{ + font-family: "Poppins", sans-serif; + font-weight: 400px; + font-size: 14px; +} +.main-container{ + display: flex; +} +.sidebar{ + width:200px; + min-height:100vh; /* full screen height */ + background:#1f3a5f; + color:#ffffff; + padding:0 20px 20px 20px; + position: fixed; + top: 0; + left: 0; + overflow-y: auto; /* in case content is taller than screen */ + z-index: 100; + + + +} +.sidebar a:hover li { + background: rgba(255, 255, 255, 0.15); + border-radius: 8px; + padding-left: 16px; + transition: all 0.2s ease; +} + +.sidebar a.active li { +background: #057df2; + border-radius: 3px; + padding-left: 13px; +} + +.logo{ + margin-top: 0; + margin-bottom:30px; + padding: 0 0px 24px; + height: 130px; + width: 150px; + object-fit: cover; +} + .sidebar a { + list-style: none; + text-decoration: none; + color: #ffffff; + + } + .sidebar li{ + padding:12px; + margin-bottom:5px; + cursor:pointer; +} +.main-content{ + flex:1; /* take remaining width */ + + background:#ffffff; + margin-left: 200px; +} +.header { + display:flex; + justify-content:space-between; /* pushes items apart */ + align-items:center; + margin-bottom:30px; + background-color: #f7f8f9; + color: #1f3a5f; + width: 100%; + padding: 16px 24px; + position: sticky; /* ← stays at top when scrolling */ + top: 0; + z-index: 99; +} +.header h1 { + + font-weight: 600; + margin: 0; /* ← remove default h1 margin that can push things off */ +} + + +.header-btn{ + display: flex; + align-items: center; + gap: 16px; + +} +header button{ + display: flex; + justify-content: center; + align-items: center; + +} +header a{ + color: #1f3a5f; +} +.create-btn{ + width: 120px; + height: 35px; + border-radius: 10px; + background-color: #1f3a5f; + color: #ffffff; + padding: 10px; +} +.Dashboard{ + color: #1f3a5f; + margin-left: 5px; + margin-bottom: 40px; +} +.first-section { + display: flex; + align-items: center; + justify-content: space-between; /* ← tabs on left, search on right */ + padding: 12px 16px; + margin-bottom: 50px; + padding: 5px 3px 50px 5px; + border-bottom: 1px solid rgba(107, 124, 147, 0.3); + +} + +/* --- TABS --- */ +.first-part { + display: flex; + align-items: center; + gap: 24px; +} + +.tab { + font-size: 14px; + font-weight: 500; + color: rgba(107, 124, 147, 1); + cursor: pointer; + padding-bottom: 4px; + border-bottom: 2px solid transparent; + margin: 0; +} + +.tab.active-tab { + color: #057df2; /* ← blue like in the image */ + border-bottom: 2px solid #057df2; /* ← blue underline on active */ +} +.first-part .tab:hover{ + color: #057df2; /* ← blue like in the image */ + border-bottom: 2px solid #057df2; + +} + +/* --- SEARCH BOX --- */ +.second-part { + display: flex; + justify-content: center; + align-items: center; + gap: 40px; + border: 1px solid rgba(107, 124, 147, 0.4); + border-radius: 6px; + overflow: hidden; /* ← keeps button inside the border */ + background: white; +} + +input { + border: none; + outline: none; + padding: 12px 18px; + font-size: 13px; + width: 220px; + color: #1e2d4a; +} + +input::placeholder { + color: rgba(107, 124, 147, 0.7); + font-size: 12px; +} + +.search-btn { + background: #f7f8f9; /* ← blue button like in the image */ + border: none; + padding: 12px 20px; + cursor: pointer; + color: #057df2; + display: flex; + align-items: center; + justify-content: center; +} + +.search-btn:hover { + background: #0369d1; +} + + + +.second-section{ + background: rgba(228, 228, 228, 0.47); + border: 1px solid rgba(107, 124, 147, 0.5); + border-radius:10px; + margin-left: 5px; + margin-right: 5px; + overflow: hidden; +} +table{ + width:100%; + border-collapse:collapse; + table-layout: fixed; + margin-top:0px; + + +} +th, td{ + padding:16px 12px; + text-align:center; + vertical-align: middle; + border-bottom:1px solid rgba(107, 124, 147, 0.5); + width: 100%; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + +} +tbody tr{ + border-bottom: 1px solid rgba(107, 124, 147, 0.5); +} +thead tr { + border-bottom: 1px solid rgba(107, 124, 147, 0.5); + + background: #d9d9d9; + border-bottom: 2px solid rgba(107, 124, 147, 1); + + +} +tbody tr:last-child { + border-bottom: none; +} +.table-image{ + height: 38px; + width: 40px; + object-fit: cover; + border-radius: 50%; /* ← makes it circular */ + vertical-align: middle; + min-width: 40px; +} +tbody td:first-child { + text-align: left; + vertical-align: middle; /* ← keeps everything centered vertically */ +} +thead th:first-child, +tbody td:first-child { + text-align: center; /* ← gives enough room for image + name */ + padding-left: 20px; /* ← same padding on both so they line up */ +} +thead th:last-child, +tbody td:last-child { + text-align: center; + width: 50%; +} +thead th:nth-child(4), +tbody td:nth-child(4) { + width: 100%; /* Status */ +} +tbody td:first-child { + text-align: center; + padding-left: px; + vertical-align: middle; +} + + + +.status { + padding: 6px 14px; + border-radius: 5px; + color: #f7f8f9; + text-align: center; + display: inline-flex; + justify-content: center; + align-items: center; + font-size: 13px; + font-weight: 400; + margin-top: 10px; + margin-left: 60px; + width: 100px; + max-width: 140px; +} +.name-cell{ + display: flex; + justify-content: center; + align-items: center; + gap: 10px; +} +.upcoming{ + background:#ffb347; +} + +.completed{ + background:#057df2; +} + +.published{ + background:#2e8b57; +} +.draft{ + background:#6b7c93; +} +/* responsiveness */ +/* + TABLET — max-width: 1024px + */ +@media (max-width: 1024px) { + input { + width: 160px; + } +} + + +/* + MOBILE — max-width: 768px + */ +@media (max-width: 768px) { + + .sidebar { + transform: translateX(-100%); + width: 220px; + z-index: 200; + } + + .sidebar.open { + transform: translateX(0); + } + + .main-content { + margin-left: 0; + } + + .hamburger { + display: flex; + } + + .header { + padding: 12px 16px; + margin-bottom: 20px; + } + + .header h1 { + font-size: 16px; + } + + .header h6 { + font-size: 11px; + } + + /* Stack tabs + search vertically */ + .first-section { + flex-direction: column; + align-items: flex-start; + gap: 16px; + padding: 5px 12px 30px; + margin-bottom: 24px; + } + + .second-part { + width: 100%; + } + + input { + width: 100%; + flex: 1; + } + + .second-section { + margin: 0 12px 30px; + } + + th, td { + padding: 12px 8px; + font-size: 12px; + } + + .status { + font-size: 11px; + width: 80px; + margin-top: 8px; + margin-left: 0; + } +} + + +/* + SMALL MOBILE — max-width: 480px + iPhone SE (375px) + */ +@media (max-width: 480px) { + + .header h1 { + font-size: 14px; + } + + .header h6 { + display: none; + } + + .tab { + font-size: 12px; + } + + .first-part { + gap: 12px; + } + + th, td { + padding: 10px 6px; + font-size: 11px; + } + + .table-image { + width: 28px; + height: 28px; + min-width: 28px; + } + + .status { + font-size: 10px; + width: 70px; + padding: 4px 6px; + } +} diff --git a/capstone project/volunteer-management.html b/capstone project/volunteer-management.html new file mode 100644 index 0000000..e2879de --- /dev/null +++ b/capstone project/volunteer-management.html @@ -0,0 +1,197 @@ + + + + + + + Document + + + + + + + + +
+ +
+ +
+
+

Volunteers

+
Manage Volunteers across all events
+
+
+ + + + +
+ +
+ + +
+
+

All

+

confirmed

+

Pending

+

Cancelled

+ +
+
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameEmail Phone Status
+
+ + John Doe +
+
johndoe@gmail.com08098782343 upcoming...
+
+ + Mary Musa +
+
marymusa@gmail.com080987111543 published...
+
+ + David James +
+
davidjames@gmail.com08098006543 Draft...
+
+ + Emeka Obi +
+
emekaobi@gmail.com 08098786543 Completed...
+
+ + Aisha Bello +
+
Aishabello@gmail.com 09123456789 completed...
+
+ + fatima Ahmed +
+
fatimaahmed@gmail.com 08094336543 upcoming...
+
+ +
+ +
+ + + + + + \ No newline at end of file