
    .search-bar.svelte-692e34 {
        width: 100%;
        max-width: 1400px;
        margin: 0 auto;
        padding: 0 1rem;
    }

    .search-container.svelte-692e34 {
        display: flex;
        align-items: center;
        background: white;
        border-radius: 16px;
        box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
        overflow: visible;
        border: 1px solid #e5e5e5;
        position: relative;
        gap: 0px;
        padding: 8px;
    }

    /* Unstyled version - remove box styling */
    .search-bar.unstyled.svelte-692e34 {
        padding: 0;
    }

    .search-bar.unstyled.svelte-692e34 .search-container:where(.svelte-692e34) {
        background: transparent;
        border-radius: 0;
        box-shadow: none;
        border: none;
        padding: 0;
    }

    .search-field.svelte-692e34 {
        position: relative;
        display: flex;
        align-items: center;
        flex: 1;
        min-height: 32px;
        padding: 8px;
        margin: 8px;
        border-radius: 8px;
        height: 48px;
    }

    .search-field.svelte-692e34:last-child {
        border-right: none;
    }

    .address-field.svelte-692e34 {
        flex: 3;
        position: relative;
    }

    .address-input-container.svelte-692e34 {
        position: relative;
        width: 100%;
    }

    .datetime-field.svelte-692e34 {
        flex: 1;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        transition: background-color 0.2s ease;
    }

    .datetime-field.svelte-692e34:hover {
        background-color: #f8f9fa;
    }

    .field-icon.svelte-692e34 {
        color: var(--won-surface);
        margin-right: 0.65rem;
        flex-shrink: 0;
    }

    .search-input.svelte-692e34 {
        width: 100%;
        border: none;
        outline: none;
        font-size: 1rem;
        font-weight: 500;
        color: var(--on-surface);
        background: transparent;
        
    }

    .search-input.svelte-692e34::placeholder {
        color: #999;
        font-weight: 400;
    }

    .datetime-display.svelte-692e34 {
        display: flex;
        flex-direction: row;
        align-items: flex-start;
        gap: 0.25rem;
        width: 100%;
    }

    .date-display.svelte-692e34 {
        font-size: 0.9rem;
        font-weight: 500;
        color: var(--on-surface);
    }

    /* (unused) .time-display {
        font-size: 0.8rem;
        color: #666;
        font-weight: 400;
    }*/

    /* (unused) .field-label {
        font-size: 0.75rem;
        font-weight: 600;
        color: #666;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        margin-bottom: 0.25rem;
    }*/

    .search-button-container.svelte-692e34 {
        display: flex;
        align-items: center;
        padding: 1rem;
        flex-shrink: 0;
        padding: 0;
        margin-right: 8px;
    }

    /* Mobile Responsiveness */
    @media (max-width: 768px) {
        .search-container.svelte-692e34 {
            flex-direction: column;
            align-items: stretch;
            border-radius: 12px;
            gap: 0;
            
            width: 100%;
        }

        .search-field.svelte-692e34 {
            border-right: none;
            min-height: 60px;
            padding: 0.75rem 1rem;
            background-color: #f9f9f9;
        }

        .search-field.svelte-692e34:last-child {
            border-bottom: none;
        }

        .datetime-field.svelte-692e34 {
            flex-direction: row;
            align-items: center;
        }

        /* (unused) .field-label {
            margin-bottom: 0;
            margin-right: 0.75rem;
            min-width: 70px;
        }*/

        /* (unused) .datetime-inputs {
            margin-top: 0;
        }*/

        .search-button-container.svelte-692e34 {
            padding: 0;
            padding-top: 16px;
        }
    }

    @media (max-width: 480px) {
        .search-bar.svelte-692e34 {
            padding: 0 0.5rem;
        }

        .search-field.svelte-692e34 {
            padding: 0.5rem;
        }

        /* (unused) .datetime-inputs {
            flex-direction: column;
            gap: 0.25rem;
            align-items: stretch;
        }*/

        /* (unused) .time-input {
            width: 100%;
        }*/
    }

    /* Focus states */
    .search-input.svelte-692e34:focus /* (unused) .date-input:focus,
    .time-input:focus*/ {
        outline-offset: -2px;
        border-radius: 4px;
    }

    /* Hover effects */
    .search-field.svelte-692e34:hover {
        background-color: #f1f1f1;
    }

    .search-field.svelte-692e34:hover .field-icon:where(.svelte-692e34) {
        color: var(--orange);
        transform: scale(1.05);
        transition: all 0.2s ease;
    }

    /* Suggestions Dropdown */
    .suggestions-dropdown.svelte-692e34 {
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        background: white;
        border: 1px solid #e5e5e5;
        border-radius: 12px;
        box-shadow: 0 8px 32px rgba(0, 0, 0, 0.15);
        z-index: 1000;
        margin-top: 0.5rem;
        max-height: 300px;
        overflow-y: auto;
        animation: svelte-692e34-fadeInScale 0.2s ease-out;
    }

    .clear-btn.svelte-692e34 {
        position: absolute; 
        right: 0.5rem; 
        top: 50%; 
        transform: translateY(-50%); 
        background: none; 
        border: none; 
        font-size: 2rem; 
        cursor: pointer; 
        padding: 0.25rem; 
        color: #666;
    }

    @keyframes svelte-692e34-fadeInScale {
        from {
            opacity: 0;
            transform: translateY(-10px) scale(0.95);
        }
        to {
            opacity: 1;
            transform: translateY(0) scale(1);
        }
    }

    .suggestion-item.svelte-692e34 {
        display: block;
        width: 100%;
        padding: 1rem;
        border: none;
        background: none;
        text-align: left;
        cursor: pointer;
        border-bottom: 1px solid #f5f5f5;
        transition: background-color 0.2s ease;
    }

    .suggestion-item.svelte-692e34:last-child {
        border-bottom: none;
    }

    .suggestion-item.svelte-692e34:hover,
    .suggestion-item.selected.svelte-692e34 {
        background-color: #f8f9fa;
    }

    .suggestion-item.selected.svelte-692e34 {
        background-color: #e3f2fd;
    }

    .suggestion-main.svelte-692e34 {
        font-size: 0.9rem;
        font-weight: 500;
        color: var(--on-surface);
        margin-bottom: 0.25rem;
    }

    .suggestion-secondary.svelte-692e34 {
        font-size: 0.8rem;
        color: #666;
        line-height: 1.3;
    }

    /* Modal Styles */
    .modal-overlay.svelte-692e34 {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: rgba(0, 0, 0, 0.6);
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 1000;
        padding: 1rem;
        animation: svelte-692e34-fadeIn 0.3s ease-out;
    }

    @keyframes svelte-692e34-fadeIn {
        from { opacity: 0; }
        to { opacity: 1; }
    }

    .modal-content.svelte-692e34 {
        background: white;
        border-radius: 20px;
        max-width: 450px;
        width: 100%;
        max-height: 90vh;
        overflow-y: auto;
        box-shadow: 0 25px 50px rgba(0, 0, 0, 0.2);
        animation: svelte-692e34-slideUp 0.3s ease-out;
    }

    @keyframes svelte-692e34-slideUp {
        from {
            opacity: 0;
            transform: translateY(30px) scale(0.95);
        }
        to {
            opacity: 1;
            transform: translateY(0) scale(1);
        }
    }

    .modal-header.svelte-692e34 {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 1.5rem 1.5rem 1rem 1.5rem;
        border-bottom: 1px solid #f0f0f0;
    }

    .modal-title.svelte-692e34 {
        margin: 0;
        font-size: 1.25rem;
        font-weight: 600;
        color: var(--on-surface);
    }

    .close-btn.svelte-692e34 {
        background: none;
        border: none;
        font-size: 1.5rem;
        color: #999;
        cursor: pointer;
        padding: 0.25rem;
        border-radius: 50%;
        width: 32px;
        height: 32px;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: all 0.2s ease;
    }

    .close-btn.svelte-692e34:hover {
        background: #f5f5f5;
        color: #666;
    }

    .modal-body.svelte-692e34 {
        padding: 1.5rem;
    }

    .calendar-section.svelte-692e34 {
        margin-bottom: 1.5rem;
    }

    .calendar-header.svelte-692e34 {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 1rem;
        padding: 0 0.5rem;
    }

    .calendar-header.svelte-692e34 h4:where(.svelte-692e34) {
        margin: 0;
        font-size: 1.1rem;
        font-weight: 600;
        color: var(--on-surface);
    }

    .nav-btn.svelte-692e34 {
        background: none;
        border: none;
        font-size: 1.5rem;
        color: #666;
        cursor: pointer;
        padding: 0.5rem;
        border-radius: 8px;
        transition: all 0.2s ease;
        width: 40px;
        height: 40px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .nav-btn.svelte-692e34:hover {
        background: #f5f5f5;
        color: var(--orange);
    }

    .calendar-weekdays.svelte-692e34 {
        display: grid;
        grid-template-columns: repeat(7, 1fr);
        gap: 2px;
        margin-bottom: 0.5rem;
    }

    .weekday.svelte-692e34 {
        text-align: center;
        font-size: 0.75rem;
        font-weight: 600;
        color: #666;
        padding: 0.75rem 0.5rem;
    }

    .calendar-days.svelte-692e34 {
        display: grid;
        grid-template-columns: repeat(7, 1fr);
        gap: 2px;
    }

    .day-btn.svelte-692e34 {
        background: none;
        border: none;
        padding: 0.75rem 0.5rem;
        font-size: 0.875rem;
        cursor: pointer;
        border-radius: 8px;
        transition: all 0.2s ease;
        color: var(--on-surface);
        font-weight: 500;
        position: relative;
    }

    .day-btn.svelte-692e34:hover:not(.disabled) {
        background: #e3f2fd;
        color: var(--orange);
    }

    .day-btn.selected.svelte-692e34 {
        background: var(--orange);
        color: white;
        font-weight: 600;
    }

    .day-btn.other-month.svelte-692e34 {
        color: #ccc;
    }

    .day-btn.disabled.svelte-692e34 {
        color: #ddd;
        cursor: not-allowed;
    }

    .time-section.svelte-692e34 {
        padding: 1rem;
        background: #f8f9fa;
        border-radius: 12px;
        display: flex;
        align-items: center;
        gap: 1rem;
    }

    .time-section.svelte-692e34 label:where(.svelte-692e34) {
        font-size: 1rem;
        font-weight: 500;
        color: var(--on-surface);
        min-width: 60px;
    }

    .time-select.svelte-692e34 {
        flex: 1;
        padding: 0.75rem;
        border: 2px solid #e5e5e5;
        border-radius: 8px;
        font-size: 1rem;
        font-weight: 500;
        color: var(--on-surface);
        transition: border-color 0.2s ease;
        cursor: pointer;
        background: white;
        appearance: none;
        background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");
        background-repeat: no-repeat;
        background-position: right 0.75rem center;
        background-size: 1rem;
        padding-right: 2.5rem;
    }

    .time-select.svelte-692e34:focus {
        outline: none;
        border-color: var(--orange);
        box-shadow: 0 0 0 3px rgba(var(--orange-rgb, 0, 150, 136), 0.1);
    }

    .time-select.svelte-692e34:hover {
        border-color: #d1d5d9;
    }

    .time-warning.svelte-692e34 {
        margin-top: 0.5rem;
        padding: 0.5rem;
        background: #fff3cd;
        border: 1px solid #ffeaa7;
        border-radius: 6px;
        font-size: 0.875rem;
        color: #856404;
        text-align: center;
    }

    .modal-footer.svelte-692e34 {
        display: flex;
        gap: 1rem;
        justify-content: flex-end;
        padding: 1rem 1.5rem 1.5rem 1.5rem;
        border-top: 1px solid #f0f0f0;
    }

    .btn-cancel.svelte-692e34,
    .btn-confirm.svelte-692e34 {
        padding: 0.75rem 1.5rem;
        border: none;
        border-radius: 10px;
        font-size: 0.875rem;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s ease;
        min-width: 100px;
    }

    .btn-cancel.svelte-692e34 {
        background: #f5f5f5;
        color: #666;
    }

    .btn-cancel.svelte-692e34:hover {
        background: #e5e5e5;
        color: #333;
    }

    .btn-confirm.svelte-692e34 {
        background: var(--orange);
        color: white;
    }

    .btn-confirm.svelte-692e34:hover {
        background: var(--orange-dark, #00695c);
        transform: translateY(-1px);
        box-shadow: 0 4px 12px rgba(var(--orange-rgb, 0, 150, 136), 0.3);
    }

    /* Mobile Modal Styles */
    @media (max-width: 480px) {
        .modal-content.svelte-692e34 {
            margin: 0.5rem;
            max-width: none;
            border-radius: 16px;
        }

        .modal-header.svelte-692e34,
        .modal-body.svelte-692e34,
        .modal-footer.svelte-692e34 {
            padding: 1rem;
        }

        .modal-title.svelte-692e34 {
            font-size: 1.1rem;
        }

        .calendar-days.svelte-692e34 {
            gap: 1px;
        }

        .day-btn.svelte-692e34 {
            padding: 0.5rem 0.25rem;
            font-size: 0.8rem;
        }

        .weekday.svelte-692e34 {
            padding: 0.5rem 0.25rem;
            font-size: 0.7rem;
        }
    }


	/* ==============================================
	   🎯 NAVBAR
	   ============================================== */
	
	.navbar.svelte-60npc7 {
		background: var(--navBarBackground, transparent);
		box-shadow: var(--navBarShadow, none);
		position: fixed;
		top: 0;
		left: 0px;
		width: 100%;
		z-index: 1000;
		transition: all 0.3s ease;
	}

	.nav-container.svelte-60npc7 {
		display: flex;
		justify-content: space-between;
		align-items: center;
		max-width: var(--max-width);
		margin: 0 auto;
		padding: 1rem 2rem;
	}

	.nav-logo.svelte-60npc7 a:where(.svelte-60npc7) {
		font-size: 1.5rem;
		font-weight: bold;
		color: var(--color-theme-1);
		text-decoration: none;
	}

	.nav-logo.svelte-60npc7 a:where(.svelte-60npc7) img:where(.svelte-60npc7) {
		max-width: 120px;
	}

	.nav-center.svelte-60npc7 {
		flex: 9;
		width: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		max-width: 600px;
		height: 32px;
	}

	.nav-right.svelte-60npc7 {
		display: flex;
		align-items: center;
		gap: 24px;
	}

	.nav-buttons.svelte-60npc7 {
		display: flex;
		align-items: center;
		gap: 8px;
	}

	/* (unused) .nav-link {
		color: var(--color-text);
		text-decoration: none;
		font-weight: 500;
		transition: color 0.2s ease;
	}*/

	/* (unused) .nav-link:hover {
		color: var(--color-theme-1);
	}*/

	/* Language Button */
	.language-btn.svelte-60npc7 {
		border: 2px solid transparent;
		border-radius: 40px;
		width: 40px;
		height: 40px;
		color: var(--color-theme-1);
		font-size: 0.9rem;
		font-weight: 500;
		cursor: pointer;
		transition: all 0.2s ease;
	}

	.language-btn.svelte-60npc7:hover {
		background: var(--color-theme-1);
		color: white;
		transform: translateY(-1px);
	}

	/* ==============================================
	   🎯 MAIN MENU
	   ============================================== */

	.menu-backdrop.svelte-60npc7 {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background: rgba(0, 0, 0, 0.25);
		backdrop-filter: blur(24px);
		z-index: 2000;
		animation: svelte-60npc7-fadeIn 0.3s ease;
	}

	@keyframes svelte-60npc7-fadeIn {
		from { opacity: 0; }
		to { opacity: 1; }
	}

	/* Desktop: Sidebar laterale a destra */
	.menu-container.svelte-60npc7 {
		position: fixed;
		top: 24px;
		right: 2rem;
		background: white;
		border-radius: 24px;
		box-shadow: 16px 16px 32px rgba(0, 0, 0, 0.16);
		padding: 2rem;
		min-width: 400px;
		animation: svelte-60npc7-slideInRight 0.3s ease;
		gap: 40px;
		height: calc(100% - 48px);
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		align-items: stretch;
	}

	.menu-header.svelte-60npc7 {
		display: flex;
		justify-content: space-between;
		align-items: center;
		flex-direction: row;
	}

	@keyframes svelte-60npc7-slideInRight {
		from { 
			opacity: 0;
			transform: translateY(0%) translateX(100%);
		}
		to { 
			opacity: 1;
			transform: translateY(0%) translateX(0);
		}
	}

	.menu-links.svelte-60npc7 {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 0.7rem;
	}

	.menu-links.svelte-60npc7 a:where(.svelte-60npc7) {
		color: var(--color-text);
		text-decoration: none;
		font-weight: 500;
		font-size: 1.1rem;
		transition: color 0.2s ease;
	}

	.menu-links.svelte-60npc7 a:where(.svelte-60npc7):hover {
		color: var(--color-theme-1);
	}

	.menu-actions.svelte-60npc7 {
		display: flex;
		flex-direction: column;
		gap: 8px;
	}

	/* ==============================================
	   🎯 LANGUAGE DIALOG
	   ============================================== */

	.language-dialog-backdrop.svelte-60npc7 {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background: rgba(0, 0, 0, 0.5);
		backdrop-filter: blur(4px);
		display: flex;
		justify-content: center;
		align-items: center;
		z-index: 3000;
		animation: svelte-60npc7-fadeIn 0.2s ease;
	}

	.language-dialog.svelte-60npc7 {
		background: white;
		border-radius: 12px;
		box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
		min-width: 320px;
		max-width: 400px;
		animation: svelte-60npc7-scaleIn 0.3s ease;
		overflow: hidden;
	}

	@keyframes svelte-60npc7-scaleIn {
		from { 
			opacity: 0;
			transform: scale(0.9) translateY(-10px);
		}
		to { 
			opacity: 1;
			transform: scale(1) translateY(0);
		}
	}

	.dialog-header.svelte-60npc7 {
		display: flex;
		justify-content: flex-end;
		align-items: center;
		padding: 1rem;
	}

	/* (unused) .dialog-header h3 {
		margin: 0;
		font-size: 1.2rem;
		font-weight: 600;
		color: var(--color-theme-2);
	}*/

	.close-btn.svelte-60npc7 {
		background: none;
		border: none;
		font-size: 1.5rem;
		cursor: pointer;
		color: #666;
		padding: 0.5rem;
		border-radius: 50%;
		transition: all 0.2s ease;
		line-height: 1;
		aspect-ratio: 1;
		width: 48px;
		height: 48px;
	}

	.close-btn.svelte-60npc7:hover {
		background: rgba(0, 0, 0, 0.1);
		color: #333;
	}

	.language-options.svelte-60npc7 {
		padding: 1rem 0;
	}

	.language-option.svelte-60npc7 {
		display: flex;
		align-items: center;
		width: 100%;
		padding: 1rem 1.5rem;
		border: none;
		background: none;
		cursor: pointer;
		transition: all 0.2s ease;
		text-align: left;
		gap: 1rem;
	}

	.language-option.svelte-60npc7:hover {
		background: #f8f9ff;
	}

	.language-option.active.svelte-60npc7 {
		background: linear-gradient(135deg, #fff3e0 0%, #ffe8cc 100%);
		border-left: 4px solid var(--color-theme-1);
	}

	.language-option.svelte-60npc7 .flag:where(.svelte-60npc7) {
		font-size: 1.5rem;
		min-width: 2rem;
	}

	.language-option.svelte-60npc7 .language-name:where(.svelte-60npc7) {
		flex: 1;
		font-size: 1rem;
		font-weight: 500;
		color: var(--color-text);
	}

	.language-option.active.svelte-60npc7 .language-name:where(.svelte-60npc7) {
		color: var(--color-theme-1);
		font-weight: 600;
	}

	.language-option.svelte-60npc7 .checkmark:where(.svelte-60npc7) {
		color: var(--color-theme-1);
		font-weight: bold;
		font-size: 1.2rem;
	}

	/* (unused) .dialog-footer {
		padding: 1rem 1.5rem;
		border-top: 1px solid #f0f0f0;
		background: #fafafa;
		text-align: center;
	}*/

	/* (unused) .cancel-btn {
		background: #f5f5f5;
		border: none;
		padding: 0.5rem 1.5rem;
		border-radius: 6px;
		cursor: pointer;
		color: #666;
		font-weight: 500;
		transition: all 0.2s ease;
	}*/

	/* (unused) .cancel-btn:hover {
		background: #e0e0e0;
		color: #333;
	}*/

	.mobile-only.svelte-60npc7 {
		display: none;
	}

	/* ==============================================
	   🎯 MOBILE
	   ============================================== */

	@media (max-width: 767px) {
		.search-active.svelte-60npc7 {
			display: none;
		}
		
		.nav-container.svelte-60npc7 {
			padding: 1rem;
		}
		
		.nav-logo.svelte-60npc7 a:where(.svelte-60npc7) {
			font-size: 1.3rem;
		}

		.nav-logo.svelte-60npc7 a:where(.svelte-60npc7) img:where(.svelte-60npc7) {
			max-width: 120px;
		}
		
		.language-btn.svelte-60npc7 {
			padding: 0.4rem 0.8rem;
			font-size: 0.8rem;
		}

		/* Mobile: Menu full-screen */
		.menu-container.svelte-60npc7 {
			position: fixed;
			top: 16px;
			left: 8px;
			right: 8px;
			transform: none;
			border-radius: 24px;
			animation: svelte-60npc7-slideInMobile 0.3s ease;
			display: flex;
			flex-direction: column;
			justify-content: space-between;
			align-items: stretch;
			padding-top: 24px;
			padding-bottom: 24px;
			padding-left: 16px;
			padding-right: 16px;
			min-width: 300px;
			height: auto;
		}

		@keyframes svelte-60npc7-slideInMobile {
			from { 
				opacity: 0;
				transform: translateY(20px);
			}
			to { 
				opacity: 1;
				transform: translateY(0);
			}
		}

		.menu-links.svelte-60npc7 {
			gap: 16px;
		}

		.menu-links.svelte-60npc7 a:where(.svelte-60npc7) {
			font-size: 1.5rem;
			margin: 0;
			padding: 0;
			letter-spacing: -1px;
			font-weight: 500;
			font-size: 24px;
		}

		.language-dialog.svelte-60npc7 {
			margin: 1rem;
			min-width: auto;
			max-width: none;
			width: 100%;
		}

		.dialog-header.svelte-60npc7 {
			padding: 1rem;
		}

		/* (unused) .dialog-header h3 {
			font-size: 1.1rem;
		}*/

		.language-option.svelte-60npc7 {
			padding: 0.75rem 1rem;
		}

		.nav-right.mobile-only.svelte-60npc7 {
			display: flex;
		flex-direction: row;
		align-items: center;
		gap: 8px;
		}

		.nav-right.desktop-only.svelte-60npc7 {
			display: none;
		}

		.language-btn.svelte-60npc7 {
			width: 56px;
			height: 56px;
			font-size: 20px;
		}
	}
