Files
FarmaFinder/apps/frontend/src/components/MedicineResults.css
T
Antoni Nuñez Romeu afaa4de385
Run Tests on Branches / Backend Tests (push) Successful in 2m2s
Run Tests on Branches / Frontend Tests (push) Successful in 1m55s
Google services, design fixes
2026-07-07 12:50:32 +02:00

151 lines
2.9 KiB
CSS

.medicine-results {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
gap: 1rem;
margin-top: 0.5rem;
max-height: 70vh;
overflow-y: auto;
overflow-x: hidden;
overscroll-behavior: contain;
animation: fadeInUp 0.5s ease-out;
}
@media (min-width: 1024px) {
.medicine-results {
max-height: 76vh;
}
}
.medicine-card {
background: var(--surface-container-lowest);
border-radius: var(--radius-md);
padding: 1.25rem;
cursor: pointer;
transition: transform 0.15s, box-shadow 0.15s;
border: 1px solid var(--outline-variant);
display: flex;
flex-direction: column;
justify-content: space-between;
box-shadow: var(--shadow-soft);
}
.medicine-card:hover {
transform: translateY(-2px);
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
border-color: var(--primary);
}
.medicine-card-header {
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 0.75rem;
margin-bottom: 0.75rem;
}
.medicine-card h3 {
color: var(--on-surface);
font-size: 1.15rem;
font-weight: 700;
letter-spacing: -0.01em;
flex: 1;
margin: 0;
}
.notify-bell {
background: var(--surface-container-low);
border: 1px solid var(--outline-variant);
border-radius: var(--radius-full);
width: 2.75rem;
height: 2.75rem;
cursor: pointer;
font-size: 1.1rem;
line-height: 1;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
position: relative;
z-index: 1;
touch-action: manipulation;
-webkit-tap-highlight-color: transparent;
transition: background 0.15s, border-color 0.15s, transform 0.15s;
}
.notify-bell:hover:not(:disabled) {
border-color: var(--primary);
transform: scale(1.05);
}
.notify-bell:active:not(:disabled) {
transform: scale(0.95);
}
.notify-bell:disabled {
opacity: 0.55;
cursor: progress;
}
.notify-bell--on {
background: var(--primary);
border-color: var(--primary);
}
.notify-bell--locked {
opacity: 0.55;
}
.notify-error {
margin-top: 0.5rem;
font-size: 0.78rem;
color: var(--error);
}
.medicine-card-body {
margin-bottom: 1.15rem;
}
.medicine-card-body p {
font-size: 0.9rem;
color: var(--on-surface-variant);
line-height: 1.55;
margin-bottom: 0.25rem;
}
.medicine-card-body strong {
color: var(--on-surface);
font-weight: 600;
}
.medicine-card-footer {
padding-top: 1rem;
border-top: 1px solid var(--outline-variant);
}
.view-pharmacies {
color: var(--primary);
font-weight: 600;
font-size: 0.9rem;
display: flex;
align-items: center;
gap: 0.5rem;
}
.view-pharmacies::after {
content: "→";
transition: transform 0.2s;
}
.medicine-card:hover .view-pharmacies::after {
transform: translateX(4px);
}
.no-results {
text-align: center;
padding: 2.5rem 1.5rem;
background: var(--surface-container-low);
border-radius: var(--radius-md);
color: var(--on-surface-variant);
border: 1px dashed var(--outline-variant);
}