Files
Kevin BATAILLE a8a8c55041 working on header
2025-08-28 14:27:06 +02:00

210 lines
4.5 KiB
CSS
Executable File

.event-finder {
background: white;
border-radius: var(--radius-2xl);
box-shadow: var(--shadow-2xl);
padding: var(--space-8);
margin: var(--space-12) auto;
position: relative;
z-index: 10;
border: 1px solid var(--color-neutral-200);
backdrop-filter: blur(20px);
}
.finder-header {
text-align: center;
margin-bottom: var(--space-8);
}
.finder-title {
font-family: var(--font-display);
font-size: var(--text-2xl);
font-weight: 800;
margin-bottom: var(--space-2);
color: var(--color-neutral-900);
}
.finder-subtitle {
color: var(--color-neutral-600);
font-size: var(--text-lg);
}
.finder-form {
display: grid;
gap: var(--space-6);
grid-template-columns: 1fr;
}
@media (min-width: 768px) {
.finder-form {
grid-template-columns: repeat(2, 1fr);
}
}
@media (min-width: 1024px) {
.finder-form {
grid-template-columns: repeat(4, 1fr) auto;
align-items: end;
}
}
.finder-field {
display: flex;
flex-direction: column;
}
.finder-label {
font-family: var(--font-display);
font-size: var(--text-sm);
font-weight: 700;
color: var(--color-neutral-700);
margin-bottom: var(--space-2);
text-transform: uppercase;
letter-spacing: 0.05em;
}
.finder-input,
.finder-select {
background: var(--color-neutral-50);
border: 2px solid var(--color-neutral-200);
border-radius: var(--radius-lg);
padding: var(--space-4);
font-size: var(--text-base);
font-weight: 500;
color: var(--color-neutral-900);
transition: all var(--duration-normal) var(--ease-out);
font-family: var(--font-sans);
}
.finder-input:focus,
.finder-select:focus {
outline: none;
border-color: var(--color-primary-500);
background: white;
box-shadow: 0 0 0 4px rgb(168 85 247 / 0.1);
}
.finder-input::placeholder {
color: var(--color-neutral-500);
}
.finder-select {
cursor: pointer;
appearance: none;
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");
background-position: right 12px center;
background-repeat: no-repeat;
background-size: 16px;
padding-right: var(--space-12);
}
.price-range {
display: flex;
flex-direction: column;
}
.price-range-label {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: var(--space-3);
}
.price-value {
font-family: var(--font-display);
font-weight: 800;
color: var(--color-primary-600);
}
.price-slider {
width: 100%;
height: 6px;
border-radius: var(--radius-full);
background: var(--color-neutral-200);
outline: none;
appearance: none;
cursor: pointer;
}
.price-slider::-webkit-slider-thumb {
appearance: none;
width: 24px;
height: 24px;
border-radius: var(--radius-full);
background: linear-gradient(135deg, var(--color-primary-600) 0%, var(--color-accent-500) 100%);
cursor: pointer;
border: 3px solid white;
box-shadow: var(--shadow-lg);
}
.price-slider::-moz-range-thumb {
width: 24px;
height: 24px;
border-radius: var(--radius-full);
background: linear-gradient(135deg, var(--color-primary-600) 0%, var(--color-accent-500) 100%);
cursor: pointer;
border: 3px solid white;
box-shadow: var(--shadow-lg);
}
.finder-search-btn {
background: linear-gradient(135deg, var(--color-primary-600) 0%, var(--color-accent-500) 100%);
color: white;
border: none;
border-radius: var(--radius-lg);
padding: var(--space-5) var(--space-8);
font-family: var(--font-display);
font-size: var(--text-lg);
font-weight: 800;
cursor: pointer;
transition: all var(--duration-normal) var(--ease-out);
box-shadow: var(--shadow-purple-md);
display: flex;
align-items: center;
gap: var(--space-2);
text-transform: uppercase;
letter-spacing: 0.05em;
white-space: nowrap;
}
.finder-search-btn:hover {
transform: translateY(-2px);
box-shadow: var(--shadow-purple-lg);
}
.finder-search-btn:active {
transform: translateY(0);
}
@media (max-width: 768px) {
.event-finder {
margin: var(--space-8) auto;
padding: var(--space-6);
}
.finder-form {
gap: var(--space-4);
}
.finder-search-btn {
justify-content: center;
padding: var(--space-4) var(--space-6);
font-size: var(--text-base);
}
}
/* Enhanced animations */
.animate-fadeInUp {
opacity: 0;
transform: translateY(30px);
transition: all 0.6s var(--ease-out);
}
.animate-fadeInUp.visible {
opacity: 1;
transform: translateY(0);
}
/* Loading spinner animation */
@keyframes spin {
to { transform: rotate(360deg); }
}