Files
peworkshop/app/globals.css
T
bobbert c496b08d52 fixing navbar
Adding Svg files and fixing appearance of navbar to look like the design pages
2025-03-23 12:54:05 +00:00

417 lines
6.3 KiB
CSS

/* Global Styles */
* {
box-sizing: border-box;
margin: 0;
padding: 0;
}
body {
font-family: Arial, sans-serif;
background-color: #f4e9dc;
color: #333;
min-height: 100vh;
}
/* Typography */
h1 {
color: #333;
margin-bottom: 1rem;
font-size: 1.5rem;
text-align: center;
}
h2 {
color: #444;
margin-bottom: 0.75rem;
font-size: 1.25rem;
}
p {
margin-bottom: 1rem;
}
/* Layout Components */
.container {
max-width: 1200px;
margin: 0 auto;
padding: 1rem;
}
/* Page Header */
.page-header {
display: flex;
justify-content: space-between;
align-items: center;
background-color: #f4e9dc;
padding: 1rem;
border-bottom: 1px solid #e0dbd0;
}
.back-button {
font-size: 1.2rem;
width: 20px;
}
.page-title {
font-weight: bold;
font-size: 1.1rem;
}
.placeholder {
width: 20px;
}
/* Auth Pages Styling */
.auth-page {
display: flex;
flex-direction: column;
min-height: 100vh;
background-color: #f4e9dc;
}
.auth-container {
flex: 1;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 1rem;
}
.auth-card {
background-color: #f4e9dc;
width: 100%;
max-width: 400px;
display: flex;
flex-direction: column;
gap: 1rem;
}
.input-container {
width: 100%;
}
.auth-input {
width: 100%;
padding: 0.75rem;
background-color: #fff;
border: 1px solid #ddd;
border-radius: 4px;
font-size: 1rem;
}
.auth-button {
background-color: #63503d;
color: white;
border: none;
border-radius: 4px;
padding: 0.75rem;
font-size: 1rem;
cursor: pointer;
width: 100%;
display: block;
}
.auth-button:hover {
background-color: #53402d;
}
.error-message {
color: #e53935;
font-size: 0.875rem;
padding: 0.5rem 0;
}
/* Navigation Bar */
.nav-bar {
display: flex;
justify-content: space-around;
background-image: url("/images/Bottom-Bar.svg");
background-repeat: no-repeat;
background-size: cover;
background-position: center;
border-top: 1px solid #ddd;
padding: 0.75rem 0;
position: fixed;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
z-index: 100;
}
.nav-item {
display: flex;
flex-direction: column;
align-items: center;
color: #777;
text-decoration: none;
flex: 1;
max-width: 25%;
}
.nav-item.active {
color: #68543c;
font-weight: bold;
}
.nav-icon {
font-size: 1.5rem;
margin-bottom: 4px;
}
.nav-label {
font-size: 0.75rem;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
width: 100%;
text-align: center;
}
/* Team Selection Page */
.team-selection-container {
flex: 1;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 1rem;
}
.team-selection-card {
background-color: #f4e9dc;
width: 100%;
max-width: 400px;
}
.team-input {
width: 100%;
padding: 0.75rem;
background-color: #fff;
border: 1px solid #ddd;
border-radius: 4px;
font-size: 1rem;
margin-bottom: 1rem;
}
/* Clue Page */
.clue-page {
background-color: #f3cf55;
display: flex;
flex-direction: column;
min-height: 100vh;
}
.clue-card {
background-color: #fff8dc;
padding: 1rem;
border-radius: 8px;
margin: 1rem;
}
.clue-content {
padding: 1rem 0;
}
.clue-buttons {
display: flex;
justify-content: space-between;
gap: 1rem;
margin-top: 1rem;
}
.clue-button {
padding: 0.5rem 1rem;
background-color: #63503d;
color: white;
border: none;
border-radius: 4px;
flex: 1;
text-align: center;
}
/* Admin Page */
.admin-page {
display: flex;
flex-direction: column;
min-height: 100vh;
background-color: #f4e9dc;
}
.admin-card {
margin: 1rem;
background-color: #f4e9dc;
}
.admin-controls {
background-color: #fff;
border-radius: 8px;
padding: 1rem;
margin-bottom: 1rem;
}
.admin-input-container {
margin-bottom: 1rem;
}
.admin-input {
width: 100%;
padding: 0.75rem;
border: 1px solid #ddd;
border-radius: 4px;
margin-bottom: 0.5rem;
}
.admin-button {
width: 100%;
padding: 0.75rem;
background-color: #63503d;
color: white;
border: none;
border-radius: 4px;
margin-bottom: 1rem;
}
.green-button {
background-color: #4caf50;
}
.red-button {
background-color: #f44336;
}
/* Map Progress Page */
.progress-page {
display: flex;
flex-direction: column;
min-height: 100vh;
background-color: #8fbc8f;
}
.progress-map {
flex: 1;
position: relative;
overflow: hidden;
}
.map-point {
position: absolute;
width: 20px;
height: 20px;
border-radius: 50%;
background-color: #fff;
}
.map-point.current {
background-color: #e53935;
}
/* Stats Page */
.stats-page {
display: flex;
flex-direction: column;
min-height: 100vh;
background-color: #f4e9dc;
}
.stats-card {
background-color: #ffecb3;
border-radius: 8px;
margin: 1rem;
padding: 1rem;
}
.stats-row {
display: flex;
justify-content: space-between;
padding: 0.5rem 0;
border-bottom: 1px solid #f0e6ce;
}
/* Leaderboard Page */
.leaderboard-page {
display: flex;
flex-direction: column;
min-height: 100vh;
background-color: #f4e9dc;
}
.leaderboard-card {
background-color: #d0c0a0;
border-radius: 8px;
margin: 1rem;
padding: 0.5rem;
}
.team-row {
background-color: #f3cf55;
padding: 0.75rem;
margin-bottom: 0.75rem;
border-radius: 4px;
display: flex;
justify-content: space-between;
}
/* QR Scanner */
.qr-scanner-container {
padding: 1rem;
background-color: #f4e9dc;
}
.scanner-wrapper {
border-radius: 8px;
overflow: hidden;
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
margin-bottom: 1rem;
}
/* Team Header */
.team-header {
position: sticky;
top: 0;
background-color: #63503d;
color: white;
padding: 0.75rem 1rem;
text-align: center;
font-weight: bold;
z-index: 100;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.team-name {
font-size: 1rem;
}
/* Adjust the main layout to account for sticky header */
.main-layout {
display: flex;
flex-direction: column;
min-height: 100vh;
}
.team-button {
background-color: #63503d;
color: white;
border: none;
border-radius: 4px;
padding: 0.75rem;
font-size: 1rem;
cursor: pointer;
width: 100%;
}
.create-team-link {
background-color: #63503d;
color: white;
border: none;
display: inline-block;
padding: 10px 15px;
border-radius: 4px;
margin-top: 0.5rem;
margin-bottom: 0.5rem;
text-decoration: none;
text-align: center;
width: 100%;
}