costco-grocery-list/frontend/src/styles/GroceryList.css
2025-11-22 22:21:36 -08:00

139 lines
2.1 KiB
CSS

/* Container */
.glist-body {
font-family: Arial, sans-serif;
padding: 1em;
background: #f8f9fa;
}
.glist-container {
max-width: 480px;
margin: auto;
background: white;
padding: 1em;
border-radius: 8px;
box-shadow: 0 0 10px rgba(0,0,0,0.08);
}
/* Title */
.glist-title {
text-align: center;
font-size: 1.5em;
margin-bottom: 0.4em;
}
/* Inputs */
.glist-input {
font-size: 1em;
padding: 0.5em;
margin: 0.3em 0;
width: 100%;
box-sizing: border-box;
}
/* Buttons */
.glist-btn {
font-size: 1em;
padding: 0.55em;
width: 100%;
margin-top: 0.4em;
cursor: pointer;
border: none;
background: #007bff;
color: white;
border-radius: 4px;
}
.glist-btn:hover {
background: #0067d8;
}
/* Suggestion dropdown */
.glist-suggest-box {
background: #fff;
border: 1px solid #ccc;
max-height: 150px;
overflow-y: auto;
position: absolute;
z-index: 999;
border-radius: 8px;
box-shadow: 0 0 10px rgba(0,0,0,0.08);
padding: 1em;
width: calc(100% - 8em);
max-width: 440px;
margin: 0 auto;
}
.glist-suggest-item {
padding: 0.5em;
padding-inline: 2em;
cursor: pointer;
}
.glist-suggest-item:hover {
background: #eee;
}
/* Grocery list items */
.glist-ul {
list-style: none;
padding: 0;
margin-top: 1em;
}
.glist-li {
padding: 0.7em;
background: #e9ecef;
border-radius: 5px;
margin-bottom: 0.6em;
cursor: pointer;
}
.glist-li:hover {
background: #dee2e6;
}
/* Sorting dropdown */
.glist-sort {
width: 100%;
margin: 0.3em 0;
padding: 0.5em;
font-size: 1em;
border-radius: 4px;
}
/* Floating Action Button (FAB) */
.glist-fab {
position: fixed;
bottom: 20px;
right: 20px;
background: #28a745;
color: white;
border: none;
border-radius: 50%;
width: 62px;
height: 62px;
font-size: 2em;
line-height: 0;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 3px 10px rgba(0,0,0,0.2);
cursor: pointer;
}
.glist-fab:hover {
background: #218838;
}
/* Mobile tweaks */
@media (max-width: 480px) {
.glist-container {
padding: 1em 0.8em;
}
.glist-fab {
bottom: 16px;
right: 16px;
}
}